所以,我的计划是这样的: 我的应用程序 A 项目使用Java OpenCV库,模块 B ,这是一个使用Java OpenCV库的库模块。
我的模块设置是这样的:在应用 A 中我编译模块 B , B 模块编译de Java OpenCV库,但我明白了:
错误:任务':app:dexDebug'的执行失败。 com.android.ide.common.internal.LoggedErrorException:无法运行命令: /Users/rafaelruizmunoz/Library/Android/sdk/build-tools/21.1.2/dx --dex --no-optimize --output / Users / rafaelruizmunoz / crossproject / Android / demoapp / app / build / intermediates / dex / debug --input-list = / Users / rafaelruizmunoz / crossproject / Android / demoapp / app / build / intermediates / tmp / dex / debug / inputList.txt 错误代码: 2 输出: 意外的顶级例外情况: com.android.dex.DexException:多个dex文件定义Lorg / opencv / BuildConfig; 在com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596) 在com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:554) 在com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:535) 在com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:171) 在com.android.dx.merge.DexMerger.merge(DexMerger.java:189) 在com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:454) 在com.android.dx.command.dexer.Main.runMonoDex(Main.java:303) 在com.android.dx.command.dexer.Main.run(Main.java:246) 在com.android.dx.command.dexer.Main.main(Main.java:215) 在com.android.dx.command.Main.main(Main.java:106)
Gradle脚本:
(App - A)
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:21.0.3'
compile project(':ReaderLib_OpenCVBased')
}
(模块 - B)
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile project(':openCVLibrary249')
}
所以我的主要问题是我不能将 OpenCV 库与编译OpenCV库的模块一起使用,我应该怎么做?
答案 0 :(得分:2)
您有multidex文件的问题,请将以下依赖项添加到您的应用Gradle文件中。
compile 'com.android.support:multidex:1.0.1'
同时添加以下行:
defaultConfig {
applicationId 'pkg'
minSdkVersion
targetSdkVersion
versionCode
versionName
// Enable MultiDexing: https://developer.android.com/tools/building/multidex.html
multiDexEnabled true
}
谢谢.. !!
答案 1 :(得分:0)
您可以使用
var maker: typeof Foo = Foo;
低于未变更
compile 'com.android.support:multidex:1.0.1'
androidTestCompile 'com.android.support:multidex-instrumentation:1.0.1'
看看这里