在磁盘发生故障后重新安装Android Studio后,我更新了项目的依赖项以反映API 21.这引入了multiDex的使用,因此我的build.gradle现在包含:
#...
<Directory "path/to/project">
Require all granted
</Directory>
<Directory "path/to/project/directory3/subdirectory3/static.html">
send_to_some_framework "path/to/project/app.php"
</Directory>
#...
请注意,我不想在此阶段更新到API 23,以便与姐妹应用程序保持一致。
我在尝试构建时遇到以下错误:
任务&#39;:app:transformClassesWithJarMergingForDebug&#39;执行失败。 com.android.build.api.transform.TransformException:java.util.zip.ZipException:重复条目:com / google / android / gms / gcm / GoogleCloudMessaging $ 1.class
我添加了&#39;排除组&#39;仅在尝试解决重复时才依赖于依赖项。
清理项目没有区别(我已经尝试过终端和Studio菜单。)
compileSdkVersion 21
buildToolsVersion '21.1.2'
defaultConfig {
minSdkVersion 17
targetSdkVersion 21
multiDexEnabled true
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile ('com.android.support:support-v4:21.0.3') {
exclude group: 'com.google.android.gms'
}
compile ('com.android.support:appcompat-v7:21.0.3') {
exclude group: 'com.google.android.gms'
}
compile ('com.android.support:multidex:1.0.0') {
exclude group: 'com.google.android.gms'
}
compile 'com.google.android.gms:play-services-gcm:7.+'
compile files('libs/android-async-http-1.4.4.jar')
}
的输出如下:
./gradlew app:dependencies
道歉,如果这是另一个SO问题的重复,但我已经查看了其他问题并且他们没有帮助,因为我无法看到重复的引入位置。谁能告诉我重复的来源?
答案 0 :(得分:0)
找到它,并且只是试图帮助,如果其他人看到类似的东西...... 这是一个从Eclipse导入Studio的项目,libs文件夹中仍然有一个Google Play Services jar,因此与gradle依赖项冲突。 我无法告诉jar接口是否存在于Studio接口,我不得不直接查看该文件夹,而只是引入了multiDex而产生错误。