我无法构建我的应用程序 我正在运行今天下载的最新构建工具,这在更新后开始发生。
-dex:
[dex] Converting compiled files and external libraries into
/Users/rob/Repos/my_app/bin/classes.dex...
[dx]
[dx] UNEXPECTED TOP-LEVEL EXCEPTION:
[dx] com.android.dx.util.DexException: Multiple dex files define
Lcom/robaldred/myapp/About$1;
我已经尝试过清理和重建,我也尝试过Eclipse,但它也会出现同样的错误。 有人有任何想法吗?我现在在这里砖墙。
答案 0 :(得分:9)
我花了几个小时清理,创建新项目,卸载 - 重新安装sdk ......没有用。我也没有任何库项目(我只是在lib下有一些jar文件)。 Howerver,最后我修复了它,我的步骤是:
答案 1 :(得分:5)
昨天发生了一些事情发生在我的系统(以及另一个工作中),SDK希望推动平台工具更新,但后来我根本无法使用它等等。
我最终将我的SDK移开并重新安装,然后一切都按原样运行。我没有你的dex特定问题,但我怀疑昨天的更新推送打破了很多东西。祝你好运。
答案 2 :(得分:3)
你可以:
删除文件夹<.settings>
,<bin>
,<gen>
和文件<.classpath>
,<.project>
和<project.properties>
。
在Eclipse中删除项目(右键,<Delete>
)而不删除源文件。
创建一个新的Android项目,然后从之前的来源中选择<Create project from existing sources>
。
如果需要,可以在构建路径中导入外部库。
应该解决这个恼人的问题。
答案 3 :(得分:2)
要非常小心您在项目中附加/拥有的所有源文件。 我在两种情况下发现了这个问题:
src
作为一个库,而不是直接进入我的src目录因此,所有答案都说你不应该把你的bin /目录放到类路径中也是正确的,但是在你遇到错误的情况下:
[2013-08-02 20:22:03 - Dex Loader] Unable to execute dex: Multiple dex files define Lcom/facebook/android/AsyncFacebookRunner$1;
[2013-08-02 20:22:03 - Activity] Conversion to Dalvik format failed: Unable to execute dex: Multiple dex files define Lcom/facebook/android/AsyncFacebookRunner$1;
你应该在项目/库中寻找相同的jar(在大多数情况下,这应该由Android Eclipse环境创建)或者查看附加到项目的所有源代码以查找类{{的上述示例代码)的多次出现({ 1}}
答案 4 :(得分:0)
我认为bin中的目录从
更改com/XXX/XXX
到
classes/com/XXX.
您可以清理项目并解决它。
答案 5 :(得分:0)
我看到了同样的问题。如果您使用的是Android Studio,则需要确保在编译时没有任何项目中包含“bin”或“gen”文件夹。
删除后,我能够成功编译
答案 6 :(得分:0)
如果您因多个DEX文件而出现问题
删除整个目标文件夹并再次构建项目。这不会影响您的项目,因为目标文件夹中的所有内容都会再次构建。
答案 7 :(得分:0)
更改实现fileTree(包括:[' .jar'],dir:'libs')到 在您的应用程序中提供了fileTree(包括:[' .jar'],dir:'libs')gradle.build&gt;依赖。
确保模块设置&gt;中已更改依赖性{include = [* jar] dir = libs}。它必须具有旁边的提供范围而不是实现。