使用Android Studio构建APK时遇到错误。我的项目需要多dexing,我在build.gradle中启用了它。我还确保build.gradle文件中的构建工具是最新的(当前使用的是2.2.3版本)
dependencies {
classpath 'com.android.tools.build:gradle:2.2.3'
}
但是,即使我清理/重建项目,或“无效缓存/重新启动”,也会不断出现错误。
构建时,会弹出错误:
Error:Execution failed for task ':app:transformClassesWithMultidexlistForDevDebug'.
> java.util.NoSuchElementException (no error message)
禁用“即时运行”时会出现上述错误。 如果我启用它,可以成功安装apk,但还有另一个例外:
Caused by: java.lang.ClassNotFoundException: Didn't find class "com.a.b.c.ABCApplication" on path: DexPathList[[zip file "/data/app/com.a.b.c.dev-1/base.apk"],nativeLibraryDirectories=[/data/app/com.a.b.c.dev-1/lib/x86, /vendor/lib, /system/lib]]
我还尝试在build.gradle中添加以下行
dexOptions {
preDexLibraries true
javaMaxHeapSize "4g"
dexInProcess false
}
我还尝试在首选项中禁用“Instance Run”,但仍然徒劳无功。
任何人都可以提供帮助吗?
我确认此错误不是由于更改导致我最近更新了我的项目,因为即使我将项目回滚到一两周前也会发生这种情况。但是很奇怪,这个错误并没发生在上周。我想知道这是否是由于gradle的更新?
答案 0 :(得分:1)
最后发现它是由于另一个第三方库的更新。
在build.gradle中,最初的罪魁祸首是
classpath 'com.appdynamics:appdynamics-gradle-plugin:4.+'
将其更改为
classpath 'com.appdynamics:appdynamics-gradle-plugin:4.2.9.0'
一切正常:)