如何在不同的Android Studio模块中使用相同gradle依赖项的不同版本?

如何在不同的Android Studio模块中使用相同gradle依赖项的不同版本?,android,gradle,android-gradle-plugin,Android,Gradle,Android Gradle Plugin,在我的Android Studio项目中,我有两个模块:应用程序和库。 因此,我还有两个build.gradle文件 build.gradle(应用程序): build.gradle(库): 当我在我的库模块中调用一些改装方法时,它使用OKHTTP2.4.0而不是2.3.0。为什么会出现这种情况?我如何改变这种情况?改型最有可能对okhttp具有传递依赖性,并使用2.4.0 你可以试试 compile ('com.squareup.retrofit:retrofit:2.0.0-beta1'){

在我的Android Studio项目中,我有两个模块:应用程序和库。 因此,我还有两个build.gradle文件

build.gradle(应用程序):

build.gradle(库):


当我在我的库模块中调用一些改装方法时,它使用OKHTTP2.4.0而不是2.3.0。为什么会出现这种情况?我如何改变这种情况?

改型最有可能对
okhttp
具有传递依赖性,并使用
2.4.0

你可以试试

compile ('com.squareup.retrofit:retrofit:2.0.0-beta1'){
    exclude module: 'okhttp'
}
compile 'com.squareup.okhttp:okhttp:2.3.0'}
强制改型使用您自己声明的
okhttp
依赖项。
但我不知道改型是否依赖于OkHttp的某个版本/实现,如果它被更改,是否能正常工作

您是否尝试过手动设置客户端?由于没有回答一般性问题,而是为特定问题提供了一个解决办法,被否决problem@J.K.我确实解释了为什么会发生这种情况,并提供了解决问题的方法。OP没有解释为什么他认为我的方法行不通。顺便说一句,你也没有。
    dependencies {
    compile 'com.squareup.okhttp:okhttp:2.3.0'
    ...
}
compile ('com.squareup.retrofit:retrofit:2.0.0-beta1'){
    exclude module: 'okhttp'
}
compile 'com.squareup.okhttp:okhttp:2.3.0'}