运维开发网

Java 当我使用Ant构建和具有多个库的Android项目时,我的构建失败

运维开发网 https://www.qedev.com 2020-02-28 19:14 出处:网络 作者:运维开发网整理
我有一个应用程序,其中包含总共10个项目:3个 Java项目,6个 Android项目和一个 Android应用程序项目.我可以在Eclipse中构建它们而不会出错,但是当我在Jenkins中构建它们时,在编译最后一个项目时构建失败了. 以下是我用于构建的shell命令. 需要说明的是,DrawCard和CameraModule是由CC_library3.0.3调用的库,而CC_library3.
我有一个应用程序,其中包含总共10个项目:3个 Java项目,6个 Android项目和一个 Android应用程序项目.我可以在Eclipse中构建它们而不会出错,但是当我在Jenkins中构建它们时,在编译最后一个项目时构建失败了.

以下是我用于构建的shell命令.

需要说明的是,DrawCard和CameraModule是由CC_library3.0.3调用的库,而CC_library3.0.3是由MainApp调用的库项目.

android update lib-project -p ./DrawCard  -t "android-15"  
android update lib-project -p ./AppStar  -t "android-15"
android update lib-project -p ./CameraModule   -t "android-15"
android update lib-project -p ./CC_library3.0.3   -t "android-15" 
android update lib-project -p ./ISAd  -t "android-15"
android update lib-project -p ./Payment  -t "android-15"
android update project -p ./MainApp -t "android-15" -l ../CC_library3.0.3 -l ../ISAd -l ../Payment

echo 'source.dir=../android-vcard/src' > ./DrawCard/ant.properties
echo 'source.dir=../TianShu/src' > ./MainApp/ant.properties
echo 'source.dir=../Log4A/src' >> ./MainApp/ant.properties
cd ./MainApp
ant all clean debug

在这些命令之后,在构建MainApp时,该过程将失败并显示以下消息:

[javac]Compiling 22 source files to /var/lib/jenkins/foobar/bin/classes
[javac]A.java : package a.b.c does not exist
....
[javac]B.java : can not find symble

.....
BUILD FAILED

我不明白为什么我会收到这个错误.我检查了所有6个lib项目的/ bin文件夹.每个包含classes.jar文件.为什么会发生这种情况,我该怎么办呢?

我不认为你可以像你一样在android更新项目的同一个调用中提交多个库.我认为-l的每个条目都会默认覆盖以前的条目.

尝试为每个库运行一次命令:

android update project -p ./MainApp -t "android-15" -l ../CC_library3.0.3
android update project -p ./MainApp -t "android-15" -l ../ISAd
android update project -p ./MainApp -t "android-15" -l ../Payment

之后打开./MainApp/project.properties并确保您有以下条目:

android.library.reference.1=../CC_library3.0.3
android.library.reference.2=../ISAd
android.library.reference.3=../Payment
0

精彩评论

暂无评论...
验证码 换一张
取 消