簡體   English   中英

庫和項目android之間的Gradle依賴沖突

[英]Gradle dependency conflict between library and project android

我正在構建一個Android項目。 使用以下gradle配置。 一切都很好。 直到我嘗試在項目中添加lottie-android庫。

apply plugin: 'com.android.application'
apply plugin: 'realm-android'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"
    defaultConfig {
        applicationId "com.ignite.a01hw909350.kolamdemo"
        minSdkVersion 19
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        vectorDrawables.useSupportLibrary = true
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
        ndk {
            abiFilters "armeabi", "armeabi-v7a", "x86", "mips"
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
    aaptOptions {
        noCompress 'KARMarker'
        noCompress 'armodel'
    }

}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
        exclude group: 'com.android.support', module: 'support-annotations'
    })
    compile project(':KudanAR')
    compile 'com.android.support:appcompat-v7:25.3.1'
    compile 'com.android.support.constraint:constraint-layout:1.0.2'
    compile 'com.android.volley:volley:1.0.0'
    compile 'nl.dionsegijn:konfetti:1.0.2'
    compile 'me.zhanghai.android.materialprogressbar:library:1.4.1'
    compile 'io.palaima:smoothbluetooth:0.1.0'
    compile 'com.android.support:recyclerview-v7:25.3.1'
    compile 'com.afollestad.material-dialogs:core:0.9.3.0'
    compile 'com.flurgle:camerakit:0.9.17'
    compile 'com.github.zhukic:sectioned-recyclerview:1.0.0'
    compile 'com.android.support:cardview-v7:25.3.1'
    compile 'com.prolificinteractive:material-calendarview:1.4.3'
    compile 'com.github.bumptech.glide:glide:3.8.0'
    compile 'com.android.support:design:25.3.1'
    compile 'com.github.barteksc:android-pdf-viewer:2.4.0'
    compile 'org.rajawali3d:rajawali:1.1.668@aar'
    compile 'com.tapadoo.android:alerter:2.0.0'
    compile 'com.google.android.gms:play-services-location:11.0.4'
    compile 'com.github.GoodieBag:ProtractorView:v1.2'
    compile 'com.android.support:gridlayout-v7:25.3.1'
    compile 'com.stepstone.stepper:material-stepper:3.3.0'
    compile 'pub.devrel:easypermissions:0.4.3'
    compile 'com.intuit.sdp:sdp-android:1.0.4'
    compile 'com.github.apl-devs:appintro:v4.2.2'
    compile 'com.airbnb.android:lottie:2.2.5'
    testCompile 'junit:junit:4.12'
}

當我在compile 'com.airbnb.android:lottie:2.2.5'添加compile 'com.airbnb.android:lottie:2.2.5'並進行編譯時。 我正在錯誤以下。

Error:Failed to resolve: com.android.support:appcompat-v7:26.1.0

我現在不想更新我的SDK。 如何避免這個錯誤?

在您的應用程序build.gradle中

allprojects {
    repositories {
        jcenter()
        maven {
            url "https://maven.google.com"
        }
    }
}

然后添加依賴項:

dependencies {
    def supportLibrariesVersion = '26.1.0'

    compile "com.android.support:support-compat:${supportLibrariesVersion}"
    compile "com.android.support:cardview-v7:${supportLibrariesVersion}"
    compile "com.android.support:recyclerview-v7:${supportLibrariesVersion}"
    compile "com.android.support:gridlayout-v7:${supportLibrariesVersion}"
    compile "com.android.support:design:${supportLibrariesVersion}"
}

此外,您還必須進行以下修改以使其起作用:

compileSdkVersion 26
buildToolsVersion "26.0.1"

只是一個猜測,但可能會失敗,因為appcompat-v7:26.1.0 lib(可能由lottie庫使用)比您的構建工具版本新。 嘗試將構建工具版本提高到26.0.1,並將sdkVersion編譯到26。此外,您還嘗試在舊版本中使用相同的庫(編譯'com.android.support:appcompat-v7:25.3.1')也可能是一個問題。

谷歌將其存儲庫移至新位置。 當您使用android gradle plugin> 3時,只需將其添加到您的build-script

repositories {
    google()
}

否則添加這個

repositories {
    maven {
        url "https://maven.google.com"
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM