Зависимости актуальны, но Gradle считает, что нет - PullRequest
0 голосов
/ 29 сентября 2018

Почему Gradle выдает эту ошибку о зависимостях, когда я использовал последнюю и ту же версию?Это только началось сегодня, и я заблудился, как это исправить:

Все библиотеки com.android.support должны использовать одну и ту же спецификацию версии (смешивание версий может привести к сбоям во время выполнения),Найдено версии 28.0.0, 26.1.0.Примеры включают com.android.support:animated-vector-drawable:28.0.0 и com.android.support:support-media-compat:26.1.0

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    testImplementation 'junit:junit:4.12'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support:animated-vector-drawable-v7:28.0.0'
    implementation 'com.android.support:support-media-compat-v7:28.0.0'
    implementation 'com.android.support:cardview-v7:28.0.0'
    implementation 'com.android.support:recyclerview-v7:28.0.0'
    implementation 'com.google.android.gms:play-services-maps:15.0.1'
}

ʍѳђ ઽ ૯ ท

FAILURE: Build failed with an exception.

* What went wrong:
A problem occurred configuring project ':app'.
> Could not generate a proxy class for class com.android.build.gradle.tasks.BuildArtifactReportTask.

* Try:
Run with --stacktrace option to get the stack trace. Run with --info or --debug option to get more log output. Run with --scan to get full insights.

* Get more help at https://help.gradle.org

BUILD FAILED in 2s

Ответы [ 3 ]

0 голосов
/ 29 сентября 2018

можно также исключить версию 26.1.0 из зависимости, но вот как применить 28.0.0:

configurations.all() {
    resolutionStrategy.force "com.android.support:support-media-compat:28.0.0"
}

это может происходить из:

implementation "com.google.android.gms:play-services-base:15.0.1"
implementation "com.google.android.gms:play-services-maps:15.0.1"

run ./gradlew app:dependencies из корневого каталога проекта, чтобы увидеть, откуда он.

0 голосов
/ 29 сентября 2018

Возможно, это связано с тем, что в версии 28 библиотеки поддержки нет библиотеки, которая ее называет

implementation 'com.android.support:animated-vector-drawable-v7:28.0.0'

или

implementation 'com.android.support:support-media-compat-v7:28.0.0'

Или, может быть, это потому, что вы используете библиотеку поддержки версии 28, но targetSdkVersion ниже версии 28.

(в Android Studio v: 3.1.4) Если вы хотите добавить другую библиотеку в свой проект, используйте следующий URL

(from toolbar) file \ Project Structure ... \ (from left window : under modules) app \ Dependencies \ (use green plus)

Эта работа для меня: Добавить эти строки в build.gradle (Project Gradle)

apply plugin: 'com.android.application'

android {
    compileSdkVersion 28
    defaultConfig {
        applicationId "your project"
        minSdkVersion 14
        targetSdkVersion 28
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    buildToolsVersion '28.0.3'
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'junit:junit:4.12'
    implementation 'com.android.support:support-v13:28.0.0'
    implementation 'com.android.support:support-v4:28.0.0'
    implementation 'com.android.support:appcompat-v7:28.0.0'
    implementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation 'com.android.support.test.espresso:espresso-contrib:3.0.2'
    implementation 'com.google.android.gms:play-services-maps:15.0.1'
    implementation 'com.android.support:cardview-v7:28.0.0'
    implementation 'com.android.support:mediarouter-v7:28.0.0'
    implementation 'com.android.support.constraint:constraint-layout:2.0.0-alpha2'
    implementation 'com.android.support:recyclerview-v7:28.0.0'
    implementation 'com.android.support:support-annotations:28.0.0'
    implementation 'com.android.support:design:28.0.0'
}
0 голосов
/ 29 сентября 2018

Выполнение ./gradlew app:dependencies на терминале покажет различные зависимости с их версиями.Чтобы легко это исправить, просто добавьте зависимость, которая имеет старую и не имеет ту же версию (как и другие связанные) зависимости в вашем Build.gradle.

Если вы удерживаете ошибка , она покажет, какая зависимость является старой, а затем вы увидите различия между версиями.

Например, если вы добавите эту версию в качестве самой новой версии, как и другие связанные зависимости, она будетбыть исправлено:

implementation 'com.android.support:support-media-compat:28.0.0' // just like the other related dependencies versions.

В вашем случае один из них использует 26.1.0 версию:

Найденные версии 28.0.0, 26.1.0

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...