Google宣布推出新的sdk版本控制系统后,Gradle项目同步失败 [英] Gradle project sync failing after Google announced the new sdk versioning system

查看:726
本文介绍了Google宣布推出新的sdk版本控制系统后,Gradle项目同步失败的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我得到以下错误:

 在包含配置'app:api'后,无法更改配置的依赖关系在依赖性解决方案中。 

已更新:我可以使用 com.google.gms:google-services:3.3.0 禁用数据绑定时,但这不是需要启用数据绑定的人的解决方案。

在Google宣布新的sdk版本控制系统(链接),我执行了以下步骤:


  1. 我按照指示更新了gradle文件,以包含gms和firebase版本号码分开。更新了apply插件行,更新了类路径。

  2. 以下是相关的gradle文件:


  3. ol>

    build.gradle(main):

      buildscript {
    存储库{
    google()
    jcenter()
    maven {url'https://dl.bintray.com/rvalerio/maven'}
    maven {url'https:/ /maven.fabric.io/public'}
    }
    依赖关系{
    classpath'com.android.tools.build:gradle:3.1.2'
    classpath'com.google .gms:google-services:3.3.0'
    classpath'com.neenbedankt.gradle.plugins:android-apt:1.8'
    classpath'io.realm:realm-gradle-plugin:4.3.3 '
    classpath'io.fabric.tools:gradle:1.25.1'
    //注意:不要在这里放置您的应用程序依赖关系;它们属于单个模块build.gradle文件中的
    //
    }
    }

    allprojects {
    repositories {
    google()
    jcenter()
    maven {url'https://jitpack.io'}
    maven {url'https://maven.google.com'}
    }
    }

    build.gradle(模块:应用程序)

      apply plugin:'com.google.gms.google-services'

    Firebase依赖关系:

      // Firebase相关性
    实现com.google.firebase:firebase -messaging:15.0.2
    实现com.google.firebase:firebase-core:15.0.2
    实现com.google.firebase:firebase-config:15.0.2$ b $ ('com.crashlytics.sdk.android:crashlytics:2.9.1@aar'){
    transitive = true
    }

    GMS和其他依赖关系

     实现com.android.support:recyclerv iew-v7:27.1.1
    implementationcom.android.support:support-v4:27.1.1
    implementationcom.android.support:cardview-v7:27.1.1
    实现com.android.support:design:27.1.1
    实现com.android.support:support-v13:27.1.1
    实现com.android.support.constraint: constraint-layout:1.1.0
    implementationcom.google.android.gms:play-services-location:15.0.1
    implementationcom.google.android.gms:play-services- vision:15.0.1
    implementationcom.google.android.gms:play-services-auth:15.0.1
    implementationcom.google.android.gms:play-services-maps: 15.0.1




    1. 我粘贴了错误从android studio 3.1.2登录pastebin 此处

    获得任何帮助!

    解决方案

    设法针对Play Services& Firebase 15.0.0 启用了数据绑定功能 ...我的依赖关系现在看起来很相似,并且它再次生成,没有任何无法更改配置的依赖关系投诉:

      buildscript {

    依赖关系{

    classpathcom.android.tools.build:gradle:3.1.2

    //不更新,因为3.3.1出现中断
    // noinspection GradleDependency
    classpathcom.google.gms:google-services:3.2.1
    }
    }

    现在必须单独引用所有库。引用 com.google.android.gms:play-services 和/或 com.google.firebase:firebase-core 自$ 15.0.0 。

      android {

    依赖性{

    // Play服务15.0.0
    实现com.google.android.gms:play-services-base:15.0.1
    实现com.google.android.gms:play-services-auth:15.0.1
    implementationcom.google.android.gms:play-services-identity:15.0.1

    // Firebase 15.0.0
    实施com.google.firebase:firebase-core:15.0.2
    实施com.google.firebase:firebase-database:15.0.1
    实现com.google.firebase:firebase-firestore:16.0.0
    实现com.google.firebase:firebase-storage:15.0.2
    实现com.google.firebase :firebase-crash:15.0.2
    实施com.google.firebase:firebase-auth:15.1.0
    实现com.google.firebase:firebase-messaging:15.0.2
    实现com.google.firebase:firebase-config:15.0.2
    实现com.google.firebase:firebase-邀请:15.0.1
    实施com.google.firebase:firebase-ads:15.0.1
    实施com.google.firebase:firebase-appindexing:15.0.1
    实现com.google.firebase:firebase-perf:15.1.0
    实现com.google.firebase:firebase-functions:15.0.0

    }

    套用插件:'com.google.gms.google-services'

    也必须编辑 Manifest.xml 以修复支持库:

     <应用程序> 

    android:name =android.support.VERSION
    android:value =27.1.1
    tools:replace =机器人:值/>


    I am getting the following error:

    Cannot change dependencies of configuration ':app:api' after it has been included in dependency resolution.
    

    Updated: I am able to build using com.google.gms:google-services:3.3.0 when data binding is disabled, but this is not a solution for someone that requires data binding to be enabled.

    After Google announced the new sdk versioning system (link), I did the following steps:

    1. I updated the gradle files as directed to include the gms and firebase version numbers separately. Updated the apply plugin line, updated the classpath. I am still getting the error and dont know the reason.

    2. Below are relevant gradle files:

    build.gradle (main):

    buildscript {
        repositories {
            google()
            jcenter()
            maven { url 'https://dl.bintray.com/rvalerio/maven' }
            maven { url 'https://maven.fabric.io/public' }
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:3.1.2'
            classpath 'com.google.gms:google-services:3.3.0'
            classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
            classpath 'io.realm:realm-gradle-plugin:4.3.3'
            classpath 'io.fabric.tools:gradle:1.25.1'
            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }
    }
    
    allprojects {
        repositories {
            google()
            jcenter()
            maven { url 'https://jitpack.io' }
            maven { url 'https://maven.google.com' }
        }
    }
    

    build.gradle (Module:app)

    apply plugin: 'com.google.gms.google-services'
    

    Firebase dependencies:

    //Firebase Dependencies
    implementation "com.google.firebase:firebase-messaging:15.0.2"
    implementation "com.google.firebase:firebase-core:15.0.2"
    implementation "com.google.firebase:firebase-config:15.0.2"
    implementation('com.crashlytics.sdk.android:crashlytics:2.9.1@aar') {
        transitive = true
    }
    

    GMS and other dependencies

    implementation "com.android.support:recyclerview-v7:27.1.1"
    implementation "com.android.support:support-v4:27.1.1"
    implementation "com.android.support:cardview-v7:27.1.1"
    implementation "com.android.support:design:27.1.1"
    implementation "com.android.support:support-v13:27.1.1"
    implementation "com.android.support.constraint:constraint-layout:1.1.0"
    implementation "com.google.android.gms:play-services-location:15.0.1"
    implementation "com.google.android.gms:play-services-vision:15.0.1"
    implementation "com.google.android.gms:play-services-auth:15.0.1"
    implementation "com.google.android.gms:play-services-maps:15.0.1"
    

    1. I have pasted the error log on pastebin from android studio 3.1.2 here.

    Any help is appreciated!

    解决方案

    managed to build against Play Services & Firebase 15.0.0 with data-binding enabled ...my dependencies now look about alike this and it builds again, without any Cannot change dependencies of configuration complaints:

    buildscript {
    
        dependencies {
    
            classpath "com.android.tools.build:gradle:3.1.2"
    
            // do not update, because 3.3.1 appears broken
            //noinspection GradleDependency
            classpath "com.google.gms:google-services:3.2.1"
        }
    }
    

    one has to reference all the libraries individually now. referencing com.google.android.gms:play‐services and/or com.google.firebase:firebase-core does not work anymore since 15.0.0.

    android {
    
        dependencies {
    
            // Play Services 15.0.0
            implementation "com.google.android.gms:play-services-base:15.0.1"
            implementation "com.google.android.gms:play-services-auth:15.0.1"
            implementation "com.google.android.gms:play-services-identity:15.0.1"
    
            // Firebase 15.0.0
            implementation "com.google.firebase:firebase-core:15.0.2"
            implementation "com.google.firebase:firebase-database:15.0.1"
            implementation "com.google.firebase:firebase-firestore:16.0.0"
            implementation "com.google.firebase:firebase-storage:15.0.2"
            implementation "com.google.firebase:firebase-crash:15.0.2"
            implementation "com.google.firebase:firebase-auth:15.1.0"
            implementation "com.google.firebase:firebase-messaging:15.0.2"
            implementation "com.google.firebase:firebase-config:15.0.2"
            implementation "com.google.firebase:firebase-invites:15.0.1"
            implementation "com.google.firebase:firebase-ads:15.0.1"
            implementation "com.google.firebase:firebase-appindexing:15.0.1"
            implementation "com.google.firebase:firebase-perf:15.1.0"
            implementation "com.google.firebase:firebase-functions:15.0.0"
        }
    }
    
    apply plugin: 'com.google.gms.google-services'
    

    also had to edit the Manifest.xml to fix the support library:

    <application>
    
        <meta-data
            android:name="android.support.VERSION"
            android:value="27.1.1"
            tools:replace="android:value"/>
    
    </application
    

    这篇关于Google宣布推出新的sdk版本控制系统后,Gradle项目同步失败的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆