targetVersion이 16 인 프로젝트가 있으며 API 레벨 8까지 지원하기 위해 SherlockActionBar 및 support-library를 사용하고 있습니다. CarouselView을 내 프로젝트에 통합하려고합니다. 지원되는 버전에는 CarouselView를 사용하고 다른 버전에는 pageViewer를 사용할 계획입니다. Jetbrains IDEA를 개발 용으로 사용하고 있습니다. 일반적으로 IDEA를 사용하여 아무 문제없이 응용 프로그램을 빌드하고 배포 할 수 있습니다. 그러나 나는 안드로이드 도구를 사용하여 응용 프로그램을 만들 수 없습니다. 결과 오류가 맨 아래에 있습니다.프리 허니 콤 용 렌더 스크립트 작성
오류를 조사하는 동안 렌더링 스크립트가 api 수준 8로 컴파일된다는 것을 깨달았습니다. % sdk.dir % \ tools \ ant \ build.xml을보고 렌더 스크립트 대상이 targetApi에 대해 project.minSdkVersion을 사용하는지 확인합니다. 이거 버그 야, 뭐야?
<renderscript executable="${renderscript}"
includePathRefId="android.renderscript.include.path"
genFolder="${gen.absolute.dir}"
resFolder="${out.res.absolute.dir}/raw"
targetApi="${project.minSdkVersion}"
optLevel="${renderscript.opt.level}"
buildType="${build.is.packaging.debug}"
previousBuildType="${build.last.is.packaging.debug}">
<source path="${source.absolute.dir}"/
</renderscript>
-code-gen:
[mergemanifest] Found Deleted Target File [mergemanifest] Merging AndroidManifest files into one. [mergemanifest] Manifest merger disabled. Using project manifest only. [echo] Handling aidl files... [aidl] No AIDL files to compile. [echo] ---------- [echo] Handling RenderScript files... [renderscript] Found 1 RenderScript files. [renderscript] Compiling 1 RenderScript files with -target-api 8 [renderscript] Optimization Level: 0 [llvm-rs-cc.exe] D:\Projects\TEB\teb\src\com\pozitron\teb\customwidgets\carousel\carousel.rs:236:14: error: structs containing vectors of dimension 3 cannot be exported at this API level: 'carouselPlane' [llvm-rs-cc.exe] D:\Projects\TEB\teb\src\com\pozitron\teb\customwidgets\carousel\carousel.rs:242:17: error: structs containing vectors of dimension 3 cannot be exported at this API level: 'carouselCylinder' [llvm-rs-cc.exe] D:\Projects\TEB\teb\src\com\pozitron\teb\customwidgets\carousel\carousel.rs:254:21: error: structs containing vectors of dimension 3 cannot be exported at this API level: 'cardVertices' [llvm-rs-cc.exe] D:\Projects\TEB\teb\src\com\pozitron\teb\customwidgets\carousel\carousel.rs:262:26: error: structs containing vectors of dimension 3 cannot be exported at this API level: 'camera' [llvm-rs-cc.exe] D:\Projects\TEB\teb\src\com\pozitron\teb\customwidgets\carousel\carousel.rs:1503:20: error: structs containing vectors of dimension 3 cannot be exported at this API level: 'p' [llvm-rs-cc.exe] D:\Projects\TEB\teb\src\com\pozitron\teb\customwidgets\carousel\carousel.rs:1045:9: error: structs containing vectors of dimension 3 cannot be exported at this API level: 'ray' [llvm-rs-cc.exe] D:\Projects\TEB\teb\src\com\pozitron\teb\customwidgets\carousel\carousel.rs:1092:9: error: structs containing vectors of dimension 3 cannot be exported at this API level: 'ray' [llvm-rs-cc.exe] D:\Proj [llvm-rs-cc.exe] ects\TEB\teb\src\com\pozitron\teb\customwidgets\carousel\carousel.rs:1503:20: error: structs containing vectors of dimension 3 c [llvm-rs-cc.exe] annot be exported at this API level: 'p' [llvm-rs-cc.exe] D:\Projects\TEB\teb\src\com\pozitron\teb\customwidgets\carousel\carousel.rs:1781:17: error: structs containing vectors of dimension 3 cannot be exported at this API level: 'ray'
BUILD FAILED D:\Android\android-sdk\tools\ant\build.xml:645: The following error occurred while executing this line: D:\Android\android-sdk\tools\ant\build.xml:665: null returned: 1
편집 : Selvin가 제안한 것처럼 내가 이전 버전에서 renderscript 폴더와 LLVM-RS-는 cc.exe를 복사됩니다. 지금 나는 다음과 같은 오류 있어요 : 저도 같은 문제가 생겼어요
[mergemanifest] Found Deleted Target File
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
[echo] Handling aidl files...
[aidl] No AIDL files to compile.
[echo] ----------
[echo] Handling RenderScript files...
[renderscript] Found 1 RenderScript files.
[renderscript] Compiling 1 RenderScript files with -target-api 8
[renderscript] Optimization Level: 0
[llvm-rs-cc.exe] Generating ScriptC_carousel.java ...
[llvm-rs-cc.exe] Generating ScriptField_ProgramStore_s.java ...
[llvm-rs-cc.exe] Generating ScriptField_Card.java ...
[llvm-rs-cc.exe] Generating ScriptField_FragmentShaderConstants_s.java ...
[echo] ----------
[echo] Handling Resources...
[aapt] Found Deleted Target File
[aapt] Generating resource IDs...
BUILD FAILED
D:\Android\android-sdk\tools\ant\build.xml:645: The following error occurred while executing this line:
D:\Android\android-sdk\tools\ant\build.xml:683: java.lang.IllegalAccessError: tried to access class com.google.common.base.Platform from class com.google.common.base.CharMatcher
at com.google.common.base.CharMatcher.precomputed(CharMatcher.java:684)
at com.google.common.base.CharMatcher.<clinit>(CharMatcher.java:63)
at com.google.common.base.Splitter.on(Splitter.java:129)
at com.android.sdklib.internal.build.SymbolWriter.write(SymbolWriter.java:51)
at com.android.ant.AaptExecTask.execute(AaptExecTask.java:711)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
at com.android.ant.IfElseTask.execute(IfElseTask.java:120)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.Sequential.execute(Sequential.java:68)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.taskdefs.MacroInstance.execute(MacroInstance.java:398)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:291)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:390)
at org.apache.tools.ant.Target.performTasks(Target.java:411)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1399)
at org.apache.tools.ant.Project.executeTarget(Project.java:1368)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1251)
at org.apache.tools.ant.Main.runBuild(Main.java:809)
at org.apache.tools.ant.Main.startAnt(Main.java:217)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:280)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:109)
전체 platform_tools 폴더를 바꿨습니까? 또는 그냥 llvm-rs-cc.exe 파일과 renderscript 폴더 만 ... 어쨌든 targetApi = "$ {project.minSdkVersion}"을 targetApi = "$ {project.targetSdkVersion} " – Selvin