我需要从命令行构建一个android应用程序。我成功编译了它的jni部分,但是无法构建Java部分。ant
打印以下内容(路径已删除):
/.../build.xml:69: taskdef class com.android.ant.SetupTask cannot be found
using the classloader AntClassLoader[/path/to/sdk/tools/lib/ant-tasks.jar:/path/to/sdk/tools/lib/manifest-merger.jar:/path/to/sdk/tools/lib/common.jar:/path/to/sdk/tools/lib/guava-13.0.1.ja r:/path/to/sdk/tools/lib/sdklib.jar:/path/to/sdk/tools/lib/layoutlib-api.jar:/path/to/sdk/tools/lib/kxml2-2.3.0.jar:/path/to/sdk/tools/lib/dvlib.jar:/path/to/sdk/tools/lib/bcpkix-jdk15on-1.4 8.jar:/path/to/sdk/tools/lib/commons-compress-1.0.jar:/path/to/sdk/tools/lib/httpclient-4.1.1.jar:/path/to/sdk/tools/lib/httpmime-4.1.jar:/path/to/sdk/tools/lib/bcprov-jdk15on-1.48.jar:/path /to/sdk/tools/lib/httpcore-4.1.jar:/path/to/sdk/tools/lib/commons-logging-1.1.1.jar:/path/to/sdk/tools/lib/commons-codec-1.4.jar]
似乎SetupTask在anttasks.jar
内,但它不在我的sdk
目录中。我尝试安装所有可用的sdk,尝试将ant-tasks.jar
添加到类路径(它有类似的名称),但没有成功。有没有办法安装anttasks.jar
,或者它被其他东西取代?或者SetupTask
在某种程度上已经过时了?
I have run:
android update project ...
我试图通过谷歌找到答案,但没有成功解决这个特定问题(AntClassLoader
不是空的,anttasks.jar
缺失)。
谢谢,丹尼尔
在Android 2.3及更高版本中设置任务列表已经过时了。因此,在我看来,您正在使用旧版本的build.xml。从Android 2.3及更高版本开始,目录中有一个新的build.xml模板your-android-SDK/工具/ant/。你可以根据你的需要修改这个。
也许这个链接对你有帮助,它给我指明了正确的方向:
https://sites.google.com/site/sokolkosta/internal-blog/includingadditionaljavaxpackagesinandroid23https://stackoverflow.com/a/15719072/1343309
rm MyProjects/NowRedux/build.xml
android update project --target 8 --path MyProjects/NowRedux