首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >谷歌宣布新的sdk版本系统后,Gradle项目同步失败

谷歌宣布新的sdk版本系统后,Gradle项目同步失败
EN

Stack Overflow用户
提问于 2018-05-04 10:01:12
回答 7查看 11.2K关注 0票数 30

我收到以下错误:

代码语言:javascript
运行
复制
Cannot change dependencies of configuration ':app:api' after it has been included in dependency resolution.

更新:当数据绑定被禁用时,我可以使用com.google.gms:google-services:3.3.0构建,但对于需要启用数据绑定的人来说,这不是一个解决方案。

在谷歌宣布新的软件开发工具包版本控制系统(link)后,我执行了以下步骤:

  1. I按照指示更新了gradle文件,以分别包含gms和firebase版本号。更新了应用插件行,更新了类路径。我仍然收到错误,不知道原因。
  2. 下面是相关的gradle文件:

build.gradle (main):

代码语言:javascript
运行
复制
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 (模块:app)

代码语言:javascript
运行
复制
apply plugin: 'com.google.gms.google-services'

Firebase依赖关系:

代码语言:javascript
运行
复制
//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和其他依赖项

代码语言:javascript
运行
复制
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"

我已经将错误日志从android studio 3.1.2 here.粘贴到了

如有任何帮助,我们不胜感激!

EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2018-06-10 04:47:59

这个问题似乎已经通过使用新的google-services版本(截至今天的4.0.1)得到了解决。以下是将解决所述问题的相关版本:

在项目build.gradle文件中:

代码语言:javascript
运行
复制
dependencies { 
classpath 'com.android.tools.build:gradle:3.1.3'
classpath 'com.google.gms:google-services:4.0.1' }

在你的应用build.gradle文件中:

代码语言:javascript
运行
复制
//Firebase Dependencies
implementation "com.google.firebase:firebase-messaging:17.0.0"
implementation "com.google.firebase:firebase-core:16.0.0"
implementation "com.google.firebase:firebase-config:16.0.0"
implementation 'com.google.firebase:firebase-perf:16.0.0'

...} apply plugin: "com.google.gms.google-services"

数据绑定也设置为true:

代码语言:javascript
运行
复制
dataBinding {
    enabled = true
}

Android Studio版本:3.1.2

感谢你们提供了各种解决问题的方法,比如@Kyle提供的答案,以及展示如何在没有google服务的情况下使用firebase的medium帖子链接。

票数 2
EN

Stack Overflow用户

发布于 2018-05-06 02:08:49

通过启用数据绑定的 ...my依赖项管理构建Play服务和Firebase 15.0.0 ,现在看起来与此类似,并且它再次构建,没有任何Cannot change dependencies of configuration抱怨:

代码语言:javascript
运行
复制
buildscript {

    dependencies {

        classpath "com.android.tools.build:gradle:3.1.2"

        // do not update, because 3.3.1 appears broken
        // classpath "com.google.gms:google-services:3.2.1"

        // meanwhile, there is version 4.0.2 available
        classpath "com.google.gms:google-services:4.0.2"
    }
}

人们必须单独引用所有的库。从15.0.0开始,仅仅引用com.google.android.gms:play‐services和/或com.google.firebase:firebase-core就不再起作用。

代码语言:javascript
运行
复制
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.2.0"
        implementation "com.google.firebase:firebase-functions:15.0.0"
    }
}

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

我还不得不编辑Manifest.xml来修复支持库:

代码语言:javascript
运行
复制
<application>

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

</application
票数 15
EN

Stack Overflow用户

发布于 2018-05-06 13:32:16

这里报告了数据绑定和google-services插件的3.3.0版本的问题:https://issuetracker.google.com/issues/79122163

到今天为止,bug处于“已分配”状态。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50166102

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档