Java 冲突的依赖关系-android studio
我试图在我的项目中添加一个依赖项Java 冲突的依赖关系-android studio,java,android,junit,android-gradle-plugin,build.gradle,Java,Android,Junit,Android Gradle Plugin,Build.gradle,我试图在我的项目中添加一个依赖项giphy4j,该依赖项使用的是junit4.8.1,但我的项目使用的是最新的junit4.12 build.gradle(模块:应用程序): 此配置使我在gradle sync上出错。 当我将androidTestCompile更改为compile时,反之亦然,它可以工作。我不明白这一点。我深入研究了依赖性的东西compile,apk,TestCompile等等,但没有得到正确的想法(因为我是一名新生)。而且,这种相互矛盾的错误也是不可理解的 第1点:编译jun
giphy4j
,该依赖项使用的是junit4.8.1
,但我的项目使用的是最新的junit4.12
build.gradle(模块:应用程序):
此配置使我在gradle sync上出错。当我将
androidTestCompile
更改为compile
时,反之亦然,它可以工作。我不明白这一点。我深入研究了依赖性的东西compile
,apk
,TestCompile
等等,但没有得到正确的想法(因为我是一名新生)。而且,这种相互矛盾的错误也是不可理解的
第1点:编译junit(使用apk发布)是否错误<代码>junit 4.12在我创建新项目时默认设置
第2点:我不想用androidTestCompile
配置我的第三方依赖项,因为当我运行/gradlew app:androiddependencies
时,它不会显示在发布配置
中
错误:错误:与项目中的依赖项“junit:junit”冲突:应用程序。应用程序(4.8.1)和测试应用程序(4.12)的解析版本不同。有关详细信息,请参阅。从库中排除junit
compile ("at.mukprojects:giphy4j:1.0.1") {
exclude group: 'junit', module: 'junit'
}
为什么不将junit从另一个依赖项中排除呢?因此gradle包含junit两次?我假设库依赖于JUnit4.8.1。但是我的项目使用的是
4.12
版本,因此它们相互冲突。这就是错误所说的,是的。但是,除非您实际编译测试依赖项,否则不清楚为什么会出现此错误。您是否尝试过?它不会强制giphy4j使用“JUnit4.12”。它只是将要添加到应用程序模块gradle中的库排除在外。这样做会触发错误<代码>错误:(3,17)错误:包org.junit不存在ExampleUnitTest.java
compile ("at.mukprojects:giphy4j:1.0.1") {
exclude group: 'junit', module: 'junit'
}