相关疑难解决方法(0)

Android构建在Eclipse中工作但不在Ant中工作("已添加")

我的Android项目使用了几个标记为Android库的git子模块.这些子模块都具有ORMlite Android jar的不同用途,因此其libs目录中包含ORMlite jar .Eclipse正确处理这种情况:它在dex处理过程中包含一次ORMlite jar 并生成一个有效的.apk,但是当我运行build via时ant debug,我得到:

 [echo] Converting compiled files and external libraries into /home/webedit/.hudson/jobs/xyz/workspace/bin/classes.dex...
[apply] 
[apply] UNEXPECTED TOP-LEVEL EXCEPTION:
[apply] java.lang.IllegalArgumentException: already added: Lcom/j256/ormlite/android/AndroidCompiledStatement;
[apply]     at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123)
[apply]     at com.android.dx.dex.file.DexFile.add(DexFile.java:143)
[apply]     at com.android.dx.command.dexer.Main.processClass(Main.java:338)
[apply]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:315)
[apply]     at com.android.dx.command.dexer.Main.access$100(Main.java:56)
[apply]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:266)
[apply]     at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:244)
[apply]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:130)
[apply]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:108)
[apply]     at com.android.dx.command.dexer.Main.processOne(Main.java:284)
[apply]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:220)
[apply]     at com.android.dx.command.dexer.Main.run(Main.java:176)
[apply]     at com.android.dx.command.dexer.Main.main(Main.java:157)
[apply]     at com.android.dx.command.Main.main(Main.java:89)
Run Code Online (Sandbox Code Playgroud)

有没有办法让多个库中有相同JAR的多个副本?是否有一个Ant构建设置我可以更改以使其工作?

ant android apk dex

6
推荐指数
1
解决办法
3751
查看次数

标签 统计

android ×1

ant ×1

apk ×1

dex ×1