【问题标题】:Build Android project containing ActionBarSherlock with ant使用 ant 构建包含 ActionBarSherlock 的 Android 项目
【发布时间】:2013-02-08 08:52:02
【问题描述】:

我在使用 Ant 构建包含 ActionBarSherlock 的项目时遇到问题。

其实编译过程中剩下的bug如下

-dex:
      [dex] Converting compiled files and external libraries into C:\ProjetsECLIPSE\SEMobile_BP\bin\classes.dex...
       [dx] 
       [dx] UNEXPECTED TOP-LEVEL EXCEPTION:
       [dx] java.lang.IllegalArgumentException: already added: Landroid/support/v4/app/Watson$OnCreateOptionsMenuListener;
       [dx]     at com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123)
       [dx]     at com.android.dx.dex.file.DexFile.add(DexFile.java:163)
       [dx]     at com.android.dx.command.dexer.Main.processClass(Main.java:486)
       [dx]     at com.android.dx.command.dexer.Main.processFileBytes(Main.java:455)
       [dx]     at com.android.dx.command.dexer.Main.access$400(Main.java:67)
       [dx]     at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:394)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processArchive(ClassPathOpener.java:245)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:131)
       [dx]     at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:109)
       [dx]     at com.android.dx.command.dexer.Main.processOne(Main.java:418)
       [dx]     at com.android.dx.command.dexer.Main.processAllFiles(Main.java:329)
       [dx]     at com.android.dx.command.dexer.Main.run(Main.java:206)
       [dx]     at com.android.dx.command.dexer.Main.main(Main.java:174)
       [dx]     at com.android.dx.command.Main.main(Main.java:91)
       [dx] 1 error; aborting

我删除了我的 libs 文件夹中的每个文件“android-supportv4.jar”,并且在 Eclipse 中,我确保在我的库和我的主项目中没有指向该库的链接,但错误仍然存​​在。

我可以通过 Eclipse 构建我的项目,但 Ant 无法构建它(在调试或发布模式下)。

我尝试了 ant clean 并没有改变任何东西。

如何避免这个令人沮丧的错误?

【问题讨论】:

  • 您是否拥有多个 Android 库项目(即 ActionBarSherlock 以及其他项目)?您使用的是当前版本的开发者工具吗?
  • 我在版本 20 上使用 ADT,实际上我的项目有多个库。我有:-我的应用程序链接到一个库,而这个库链接到 actionBarSherlock
  • 嗯...如果有多个 JAR 副本,则应触发构建工具检测并忽略或抱怨副本,使用 R20。不知道你遇到了什么。
  • 当我“蚂蚁更新项目”我的库时我错过了什么吗?我应该将它们更新为库以使其正常工作吗?

标签: android ant actionbarsherlock


【解决方案1】:

检查项目的 libs 文件夹,如果有重复的 jar,请将其删除。我在项目的 libs 文件夹中找到了 actionbarsherlock.jar,在我删除它之后,问题就解决了。

也检查一下; this blogthis questionthis page

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-05-31
    • 2011-11-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多