Android 我可以启用DEX详细日志记录吗?

Android 我可以启用DEX详细日志记录吗?,android,intellij-idea,Android,Intellij Idea,我把我的Android IntelliJ创意项目从一个地方搬到了另一个地方。出于某种原因,IDEA丢失了所有模块,我不得不重新导入它们 现在,当我编译时,我得到这个DEX错误: Error:Android Dex: [MyApp] Unable to execute DX Error:Android Dex: [MyApp] com.android.dex.DexException: Multiple dex files define Lcom/google/common/base/Final

我把我的Android IntelliJ创意项目从一个地方搬到了另一个地方。出于某种原因,IDEA丢失了所有模块,我不得不重新导入它们

现在,当我编译时,我得到这个DEX错误:

Error:Android Dex: [MyApp] Unable to execute DX 
Error:Android Dex: [MyApp] com.android.dex.DexException: Multiple dex files define Lcom/google/common/base/FinalizableReference; 
Error:Android Dex: [MyApp] at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594) 
Error:Android Dex: [MyApp] at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552) 
Error:Android Dex: [MyApp] at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533) 
Error:Android Dex: [MyApp] at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170) 
Error:Android Dex: [MyApp] at com.android.dx.merge.DexMerger.merge(DexMerger.java:188) 
Error:Android Dex: [MyApp] at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439) 
Error:Android Dex: [MyApp] at com.android.dx.command.dexer.Main.runMonoDex(Main.java:287)     
Error:Android Dex: [MyApp] at com.android.dx.command.dexer.Main.run(Main.java:230) 
Error:Android Dex: [MyApp] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
Error:Android Dex: [MyApp] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 
Error:Android Dex: [MyApp] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 
Error:Android Dex: [MyApp] at java.lang.reflect.Method.invoke(Method.java:597) 
Error:Android Dex: [MyApp] at org.jetbrains.android.compiler.tools.AndroidDxRunner.runDex(AndroidDxRunner.java:161)      
Error:Android Dex: [MyApp] at org.jetbrains.android.compiler.tools.AndroidDxRunner.main(AndroidDxRunner.java:294) 
Error:Android Dex: [MyApp] at com.intellij.rt.execution.CommandLineWrapper.main(CommandLineWrapper.java:121)
我不知道原因是什么,所有常见的多个罐子的嫌疑似乎都没有问题


有没有办法打开详细日志记录来更好地了解哪些lib存在冲突?

我不知道如何从DEX中获得更好的错误描述,但这里有两个解决问题的建议:

  • 如果使用Android Studio,只需搜索有问题的类
    FinalizableReference
    (搜索中包括非项目类)。 (使用
    Command+N
    查找类,或双击
    Shift
    搜索所有地方)。 对于eclipse:
    Ctrl+Shift+T
    ?其他人可以确认

  • 使用命令行:
    jar tf mylib.jar | grep finalizableference
    将在mylib中搜索类。然后可以使用一些shell
    for
    在jar文件(通常在libs dir中)上循环。 另外,
    grep-r finalizableference libs/*\.jar
    将扫描所有jar(假设libs中有这些jar),并通知具有匹配项的jar(重复项)