我无法编译项目得到以下错误编译:
错误:任务':myApp:dexDebug'执行失败。
com.android.ide.common.internal.LoggedErrorException:无法运行命令: C:\ Program Files(x86)\ Android \ android-studio \ sdk \ build-tools \ 21.0.2 \ dx.bat --dex --output C:\ Users \ Android Studio \ Android Studio \ myApp \ build \ intermediates \ dex \ debug --input-list = C:\ Users \ myApp \ Downloads \ Android Studio \ Android Studio \ myApp \ build \ intermediates \ tmp \ dex \ debug \ libraryList.txt 错误代码: 2 输出: 意外的顶级例外情况: com.android.dex.DexException:多个dex文件定义了Landroid / support / v4 / accessibilityservice / AccessibilityServiceInfoCompat $ AccessibilityServiceInfoVersionImpl; 在com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:596)
当然,这段代码解决了我的问题
configurations {
all*.exclude group: 'com.android.support', module: 'support-v4'
但遗憾的是不满足我
dependencies {
compile fileTree(include: '*.jar', dir: 'libs')
compile 'com.android.support:support-v4:21.+'
compile project(':PullToRefreshListFragment')
compile project(':validator')
compile project(':AndroidBootstrap')
compile 'com.google.android.gms:play-services:6.+'
compile 'com.android.support:appcompat-v7:21+'
compile 'com.github.codechimp-org.apprater:library:1.0.+'
compile 'com.sothree.slidinguppanel:library:+'
compile 'me.grantland:autofittextview:0.2.+'
compile 'io.realm:realm-android:0.71.0'
compile ('com.loopj.android:android-async-http:1.4.6')
{
exclude group: 'com.google.android', module: 'support-v4'
}
compile('de.keyboardsurfer.android.widget:crouton:1.8.5@aar') {
exclude group: 'com.google.android', module: 'support-v4'
}
compile ('io.nlopez.smartlocation:library:2.+')
{
exclude(group: 'com.google.android', module: 'gms:play-services')
}
configurations {
// all*.exclude group: 'com.android.support', module: 'support-v4'
}
我该如何编译项目?
答案 0 :(得分:6)
这似乎是Android工作室迁移问题的常见ADT。 ADT正在libs / dir中寻找android-support-v4.jar的副本,而Android studio拥有它自己的内部副本。迁移jar文件时会留在libs目录中,这会创建一个重复的jar,很可能是旧版本。我删除了libs目录中的jar,问题解决了。
答案 1 :(得分:3)
图书馆作者应该修复它们