我得到了一个安卓项目文件,应该正确编译。
我安装了最新的eclipse和android ADT插件。
然后导入项目并右键单击build.xml以作为ANT构建运行。但是我在一些基本代码上出现了错误,我确信这是源于我错误配置的设置。
我还尝试从命令行使用ANT运行它。两次我都得到了相同类型的错误
怎么了
Buildfile: /Users/admin/Downloads/moshe-5/build.xml
init:
process.annotations:
[javac] Compiling 9 source files to /Users/admin/Downloads/moshe-5/build/classes
[javac] /Users/admin/Downloads/moshe-5/src/ti/moshe/CustomAdapter.java:7: package android.app does not exist
[javac] import android.app.Activity;
[javac] ^
[javac] /Users/admin/Downloads/moshe-5/src/ti/moshe/CustomAdapter.java:8: package android.content does not exist
[javac] import android.content.Context;
[javac] ^
[javac] /Users/admin/Downloads/moshe-5/src/ti/moshe/CustomAdapter.java:9: package android.graphics does not exist
[javac] import android.graphics.Color;
在我的例子中,这是由于我没有默认值的问题。属性文件中包含目标字段。
我必须手动创建文件并放入
target=android-9
或其他Android目标版本
如果你运行
ant -v
在构建命令中,您可能会看到这一行
Property "target" has not been set
和
[property] Unable to find property file: /PATH_TO/default.properties
这些信息已经足够提示了。
希望这也能解决你的问题
没有找到android包。在构建步骤中,你应该包含android.jar对应于你想移植到的android版本。
当您编写编译目标时,您将覆盖android_rules.xml ,位于: C:Program Files (x86)Android android-sdkplatformsandroid-8templates或你电脑上的android_rules.xml文件
就像波特上面提到的那样,它没有找到android库和其他库,所以请查看android_rules.xml,看看它是如何设置正确的库的:
<target name="compile" depends="-resource-src, -aidl"
description="Compiles project's .java files into .class files">
<!-- If android rules are used for a test project, its classpath should include
tested project's location -->
<condition property="extensible.classpath"
value="${tested.project.absolute.dir}/bin/classes" else=".">
<isset property="tested.project.absolute.dir" />
</condition>
<condition property="extensible.libs.classpath"
value="${tested.project.absolute.dir}/libs" else="./libs">
<isset property="tested.project.absolute.dir" />
</condition>
<javac encoding="ascii" target="1.5" debug="true" extdirs=""
destdir="${out.classes.absolute.dir}"
bootclasspathref="android.target.classpath"
verbose="${verbose}" classpath="${extensible.classpath}">
<src path="${source.absolute.dir}" />
<src path="${gen.absolute.dir}" />
<classpath>
<fileset dir="${external.libs.absolute.dir}" includes="*.jar" />
<fileset dir="${extensible.libs.classpath}" includes="*.jar" />
</classpath>
</javac>
</target>
类路径标签中包含android.jar。您可以通过添加更多文件集来添加其他库
其他一些用于编写ANT编译目标的代码示例如下:
不能构建和运行使用"ant create test-project"创建的android测试项目当测试项目在lib目录下有jar时<——这对我有效
http://www.vogella.de/articles/ApacheAnt/article.htmlhttp://www.alittlemadness.com/2010/05/31/setting-up-an-android-project-build/<——设置ANT项目
很可能找不到Android,因为你没有定义sdk.dir
属性,它告诉构建过程在哪里找到Android。此属性通常在本地。属性文件,并在执行以下操作时填充:
android update project
如下所示:
http://developer.android.com/tools/projects/projects-cmdline.html UpdatingAProject
不要使用ANT进行构建。Eclipse和ADT插件为您省去了麻烦。只需右键单击项目,选择run as -> Android应用程序