У Transloadit Dependency есть разные версии для compile (x) и runtime (y) - PullRequest
0 голосов
/ 12 октября 2018

Я хочу добавить Transloadit Android SDK.Сборка gradle завершается с ошибкой:

Зависимость Android 'io.tus.android.client: tus-android-client' имеет разные версии для компиляции (0.1.5) и времени выполнения (0.1.7) путь к классам.Вы должны вручную установить ту же версию через 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 голосов
/ 12 октября 2018

Я обнаружил другую версию той же библиотеки в одном из подмодулей, которая вызвала проблему.

В моем случае a удалось удалить другую зависимость.Но если у вас есть библиотека, которая использует, например, более старую версию библиотеки, которую вы должны использовать, вы можете сделать следующее:

Как описано здесь -> https://developer.android.com/studio/build/gradle-tips#configure-project-wide-properties

, вы можете переопределить номер версиибиблиотек, используемых в подмодулях и библиотеках, добавив ext в корневую папку и укажите, какую версию следует использовать.В моем случае я переопределяю версии для библиотек поддержки android v4 и v7 и библиотеки местоположений play-service.

Вот что мне нужно было добавить в мой корневой файл 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}"
    }
}

и в моем модуле "приложение" я могу также использовать эти версии

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}"
...