Transloadit Dependency对于编译(x)和运行时(y)具有不同的版本

时间:2018-10-12 09:19:25

标签: android gradle transloadit

我想添加transloadit android sdk。 gradle构建失败,并出现以下错误:

  

Android依赖项“ io.tus.android.client:tus-android-client”具有   用于编译(0.1.5)和运行时(0.1.7)的不同版本   类路径。您应该通过以下方式手动设置相同的版本   DependencyResolution

我已经在支持库中使用了dependencyResolution,但是我不确定如何使用transloadit。这就是我到目前为止所拥有的。

configurations.all {
    resolutionStrategy.force "com.android.support:support-v4:28.0.0"
    resolutionStrategy.force "com.android.support:appcompat-v7:28.0.0"
}

1 个答案:

答案 0 :(得分:0)

我在引起问题的一个子模块中找到了同一库的另一个版本。

就我而言,a能够删除其他依赖项。但是,如果您的图书馆使用的是旧版本的图书馆,则必须执行以下操作:

如此处所述-> https://developer.android.com/studio/build/gradle-tips#configure-project-wide-properties

您可以通过在根文件夹中添加ext并指定应使用哪个版本来覆盖子模块和库中使用的库的版本号。就我而言,我覆盖了android v4和v7支持库以及play-service-location库的版本。

这是我必须添加到根gradle文件中的内容

ext {
    compileSdkVersion = 28
    supportLibVersion = "28.0.0"
    googleMapsLibVersion = "16.0.0"
}
allprojects {
    repositories {
        google()
        jcenter()
    }
    configurations.all {
        resolutionStrategy.force "com.android.support:support-v4:${rootProject.ext.supportLibVersion}"
        resolutionStrategy.force "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
        resolutionStrategy.force "com.google.android.gms:play-services-location:${rootProject.ext.googleMapsLibVersion}"
    }
}

在我的模块“ app”中,我也可以使用这些版本

implementation "com.android.support:appcompat-v7:${rootProject.ext.supportLibVersion}"
implementation "com.android.support:support-v13:${rootProject.ext.supportLibVersion}"
implementation "com.android.support:recyclerview-v7:${rootProject.ext.supportLibVersion}"
implementation "com.google.android.gms:play-services-location:${rootProject.ext.googleMapsLibVersion}"
implementation "com.google.android.gms:play-services-maps:${rootProject.ext.googleMapsLibVersion}"