[英]Encountered Error when Building Android App with Ant
I have an android project and I use android update project -p . 我有一个android项目,并使用android update project -p。 --target 12 to generate build.xml script. --target 12生成build.xml脚本。 Once this is done, I use ant to build the project. 完成此操作后,我将使用ant来构建项目。 However, I encountered this error log: 但是,我遇到此错误日志:
BUILD FAILED
/Users/sean/Downloads/GameSample/build.xml:90: The following error occurred while executing this line:
/Users/sean/local/adt/sdk/tools/ant/build.xml:111: java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument(Z)V
at com.google.common.collect.Maps.capacity(Maps.java:105)
at com.google.common.collect.Sets.newHashSetWithExpectedSize(Sets.java:181)
at com.android.ant.RenderScriptTask.<clinit>(RenderScriptTask.java:59)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:270)
at org.apache.tools.ant.taskdefs.Definer.addDefinition(Definer.java:579)
at org.apache.tools.ant.taskdefs.Definer.loadProperties(Definer.java:408)
at org.apache.tools.ant.taskdefs.Definer.execute(Definer.java:264)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:292)
at sun.reflect.GeneratedMethodAccessor4.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
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:435)
at org.apache.tools.ant.helper.ProjectHelper2.parse(ProjectHelper2.java:168)
at org.apache.tools.ant.taskdefs.ImportTask.importResource(ImportTask.java:230)
at org.apache.tools.ant.taskdefs.ImportTask.execute(ImportTask.java:162)
I did some search in google and stackoverflow but I failed to find any relative information. 我在google和stackoverflow中做了一些搜索,但是找不到任何相关信息。 I am wondering if there is anything wrong with my environment. 我想知道我的环境是否有问题。
The snippet of the build.xml around line 111 is 第111行的build.xml片段是
<path id="android.antlibs">
<pathelement path="${sdk.dir}/tools/lib/guava-13.0.1.jar" />
<pathelement path="${sdk.dir}/tools/lib/ant-tasks.jar" />
</path>
<!-- Custom tasks -->
<taskdef resource="anttasks.properties" classpathref="android.antlibs" />
First, check your guava-xxx.jar (eg. ${sdk.dir}/tools/lib/guava-13.0.1.jar
), make sure it do have method void checkArgument(boolean)
under com.google.common.base.Preconditions
首先,检查您的guava-xxx.jar(例如${sdk.dir}/tools/lib/guava-13.0.1.jar
),确保它在com.google.common.base.Preconditions
下确实具有方法void checkArgument(boolean)
com.google.common.base.Preconditions
Second, check your CLASSPATH
environment, make sure there's no other jar files in CLASSPATH
contain class com.google.common.base.Preconditions
其次,检查你的CLASSPATH
环境,确保有没有其他jar文件CLASSPATH
包含类com.google.common.base.Preconditions
Your exception, but not stack trace, is the same as in this question - CompilerOptions: NoSuchMethodError: com.google.common.base.Preconditions.checkArgument . 您的异常但不是堆栈跟踪,与该问题相同-CompilerOptions:NoSuchMethodError:com.google.common.base.Preconditions.checkArgument 。 Perhaps you are also missing a classpath entry? 也许您还缺少类路径条目?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.