添加包含其他依赖项的模块依赖项

时间:2013-04-24 08:23:34

标签: android intellij-idea

我使用的是IntelliJ 12。
我有一个Module A,它与github项目有模块依赖关系。我向Module B添加了对Module A的依赖关系。
Module A取决于module1module2module3,......
Module B取决于Module A

但是Module B没有找到对module1module2的任何引用,......这就是我在Eclipse中宣称它的方式("添加库项目"),它的工作原理。
现在,如果我添加Module B module1module2 ...它会影响Module B与Eclipse混淆的project.properties。我可以从Eclipse获得这个

  

Dex Loader]无法执行dex:多个dex文件定义了模块   B]转换为Dalvik格式失败:无法执行dex:Multiple   dex文件

在IntelliJ中,从一个本身包含多个依赖项的模块添加依赖项的正确方法是什么?

修改 我遵循了CrazyCoder的指示。然后IntelliJ正在告诉

  

Android Dex:[模块B]意外的顶级例外:Android Dex:   [模块B] java.lang.IllegalArgumentException:已添加:   Landroid /支持/ V4 /应用/ ShareCompat $ ShareCompatImplJB; Android Dex:   [模块B]在   com.android.dx.dex.file.ClassDefsSection.add(ClassDefsSection.java:123)   Android Dex:[模块B]在   com.android.dx.dex.file.DexFile.add(DexFile.java:163)

部分module1module2 ...在libs文件夹中包含android-support-v4.jar。 jar依赖项已添加但未导出。 只有Module A的库(包含libs文件夹中的所有jar)都已导出

1 个答案:

答案 0 :(得分:12)

感谢CrazyCoder,我从Module A

导出了所有依赖项

enter image description here

对于同一.jar的多个依赖项。我只是将android-support-v4.jar设置为Project Library。看完Intellij: android-support-v4.jar in included in actionBarSherlock and Project => IllegalArgumentException后。我在所有引用它的模块中将范围从Compile更改为Provided的android-support-v4。