我有两个Android项目,一个共享库和应用程序。现在我想编译依赖于库的应用程序。在Eclipse中,它运行良好。之后,我通过git将其上传到我的存储库并触发Jenkins构建两个项目。
我的问题是,发生错误:" sdk / android-sdk-linux / tools / ant / build.xml:440:../ shared -lib解析为没有project.properties文件的路径对于项目"。这很清楚,因为在Jenkins中,作业的存储与Eclipse不同。
另一个问题是,Eclipse将共享编译为" .jar"和Ant将它编译成" classes.jar" (以sdk / android-sdk-linux / tools / ant / build.xml命名)。
答案 0 :(得分:4)
Ant脚本应该允许您包含所需的任何文件。在您的情况下,我建议您将引用移动到shared-lib
到local.properties
文件(此文件也应该由update-project生成的ant脚本读取。在存储库中保留jenkins的适当路径并在本地修改本地文件。在存储库中的文件中,您需要具有以下内容:
android.library.reference.1=../classes.jar
编辑顺便提一下第二个属性文件的建议只是因为这个文件真的是为了存储特定于位置的属性。
答案 1 :(得分:1)
我用复制文件修复了它。第一个项目构建了我的shared-lib.jar
。其他项目(手机和平板电脑)将此文件(shared-lib.jar)复制到libs
- 文件夹并正确构建。但现在我在服务器和我的开发客户端上有不同的projects.properties
。这个没有签入git。