在下面的build.gradle中,我添加了配置部分以避免双重包含支持库.支持库用于主项目和依赖项目,如facebook sdk.如果没有配置部分,我会得到"意想不到的顶级异常".添加该配置会使错误消失,应用程序一切正常.
现在,我正在尝试将RecyclerView添加到我的应用程序中,并且在充气Recyclerview时找不到RecyclerView类(尽管它构建正常).如果我删除了facebook SDK和配置部分,则recyclerview工作正常.
问题:我可以对build.gradle进行哪些更改以使facebook SDK正常工作并且RecyclerView可以正常工作?换句话说,为什么配置部分不包括v7,只是它应该排除v4?
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:support-v4:+'
compile 'com.android.support:support-v13:+'
compile 'com.android.support:cardview-v7:+'
compile 'com.android.support:recyclerview-v7:+'
compile 'com.google.android.gms:play-services:4.4.52'
compile project(':facebook-3.15')
compile project(':parse-1.5.1')
compile project(':viewpagerindicator-2.4.1')
}
configurations {
// to avoid double inclusion of support libraries
all*.exclude group: 'com.android.support', module: 'support-v4'
}
Run Code Online (Sandbox Code Playgroud) 我正在尝试使用以下build.gradle配置将Powermock作为我的Android测试的依赖项:
dependencies{
compile 'com.android.support:appcompat-v7:21.0.+'
androidTestCompile('org.mockito:mockito-core:1.9.5')
androidTestCompile('com.google.dexmaker:dexmaker:1.2')
androidTestCompile('com.google.dexmaker:dexmaker-mockito:1.2')
androidTestCompile('org.powermock:powermock-module-junit4:1.5.5') {
exclude module: 'junit'
}
androidTestCompile('org.powermock:powermock-api-mockito:1.5.5') {
exclude module: 'mockito-all'
}
}
Run Code Online (Sandbox Code Playgroud)
但是,编译器抱怨说
Error:Gradle: Execution failed for task ':app:packageDebugTest'.
> Duplicate files copied in APK mockito-extensions/org.mockito.plugins.MockMaker
File 1: ~/.gradle/caches/modules-2/files-2.1/com.google.dexmaker/dexmaker-mockito/1.2/b99884a4c6ef6335ba376f79aa79632b2421c17c/dexmaker-mockito-1.2.jar
File 2: ~/.gradle/caches/modules-2/files-2.1/com.google.dexmaker/dexmaker-mockito/1.2/b99884a4c6ef6335ba376f79aa79632b2421c17c/dexmaker-mockito-1.2.jar
Run Code Online (Sandbox Code Playgroud)
展望罐子结构,我注意到Dexmaker和Powermock都宣布MockMaker在mockito-extensions

什么是MockMaker?他们有什么不同?最重要的问题是:是否有可能让Powermock与Dexmaker很好地合作?
提前致谢.任何帮助将不胜感激.