我有一个项目,我已经成功地使用了proguard很长一段时间,故意运行旧版本的ADB(pre r12),因为我似乎总是遇到需要很长时间才能解决的错误。我最近更新到r16,这样做完全打破了我使用命令行构建的能力 - > " ant release"
我发现了一大堆信息让我能够解决多个问题,但现在我遇到了以下问题,而且我没有尝试过任何建议:
[dx] UNEXPECTED TOP-LEVEL EXCEPTION:
[dx] java.lang.IllegalArgumentException: already added: Lcom/android/vend
ing/licensing/AESObfuscator;
[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.jav
a:394)
[dx] at com.android.dx.cf.direct.ClassPathOpener.processArchive(Class
PathOpener.java:245)
[dx] at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPath
Opener.java:131)
[dx] at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpe
ner.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:3
29)
[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:95)
[dx] 1 error; aborting
BUILD FAILED
C:\Users\Public\android_sdk_r3\android-sdk-windows\tools\ant\build.xml:752: The
following error occurred while executing this line:
C:\Users\Public\android_sdk_r3\android-sdk-windows\tools\ant\build.xml:754: The
following error occurred while executing this line:
C:\Users\Public\android_sdk_r3\android-sdk-windows\tools\ant\build.xml:766: The
following error occurred while executing this line:
C:\Users\Public\android_sdk_r3\android-sdk-windows\tools\ant\build.xml:256: null
returned: 1
我知道它说AESObfuscator正在被添加两次,但我不确定它被引入我的项目的各个地方。引用此问题的其他帖子导致人们提供了许多不同的可能解决方案。我希望有人能告诉我明确要删除的内容。
LVL的jar文件列在"参考库中。"我手动将jar文件复制到libs文件夹以解决我遇到的其他错误。右键单击我的项目并选择" Properties" - > " Java Build Path" - > "库"有LVL jar文件,Android 2.2和com.android.ide.eclipse.adt.LIBRARIES。最初"图书馆"有Android 2.2和"参考图书馆"但是我在其他人的建议下手动删除了参考库,但这导致了Eclipse中的错误。然后我手动将LVL罐子添加回" Libraries"通过选择"添加外部JAR"结果是上面的3个项目。
我需要做些什么来解决这个问题?感谢。
答案 0 :(得分:0)
我按照以下链接说明:
然后我不得不向local.properties添加var和value: out.classes.dir =仓
清理bin /目录中的所有内容。
它有效。
祝你好运。答案 1 :(得分:0)
我做了一些不同的事情让一切工作正常,但不幸的是我不确定是否有一个特定的步骤可以解决问题。
我删除了为执行升级后的每个库添加的额外src文件夹。
我停止使用LVL作为外部库,只是将源代码直接添加到我的项目中。
在Eclipse中,我进入了属性 - > Android,在显示的窗口的Library部分中,我删除了所有引用。
Eclipse中显示了我的项目中使用的proguard文件的特定错误,但这些错误很容易识别和纠正。
此时我认为一切都应该有效,但我仍有问题。所以我清理了项目,突然一切都运行良好。所以,我似乎需要采取上述每个步骤来解决我的问题。