首页 文章

无法在Android上应用'io.fabric'插件

提问于
浏览
1

我正在尝试添加Firebase Crashlytics . Firebase Crashlytics教程非常简单:https://firebase.google.com/docs/crashlytics/get-started?authuser=0

我已经添加了存储库(在buildscript和所有项目中),以及类路径和依赖项的实现 . 就像在教程中一样 . 但是,当我应用'io.fabric'插件(应用插件:'io.fabric')并在Android Studio中按'同步'时,会显示下一个错误:

A problem occurred evaluating project ':app'.
> Failed to apply plugin [id 'io.fabric']
   > No such property: verboseGradlePlugin for class: java.lang.String

我在"apply plugin: 'com.android.application'"之后申请插件 .
试图将Fabric插件添加到Android Studio - 没有帮助 .
尝试将所有插件版本降至1.24.0 . (当前是1.25.4)
无效的缓存和重新启动的Android Studio .
试图将'fabric.properties'文件添加到app文件夹以及'crashlytics.properties'文件 .
试图传递-DverboseGradlePlugin = false或使用'true'来gradle 's ' build'任务 .

Gradle知道'io.fabric'插件,但试图找到缺少的'verboseGradlePlugin'属性 . 我还没有在谷歌找到任何关于此类问题的信息 .

也许有人已经面临同样的问题或有任何建议如何解决这个问题?

UPD:
我的项目级build.gradle
我的应用级build.gradle

Gradle版本 - 4.4
Android gradle插件版本 - 3.1.2

3 回答

  • 2

    Step1:project level build.gradle中添加:

    maven {
            url 'https://maven.fabric.io/public'
        }
    

    注意:这个添加应该严格地粘贴在您的buildscript中,而不是你的allprojects gradle脚本,如下所示:

    buildscript {
    repositories {
        jcenter()
        google()
        maven {
            url 'https://maven.fabric.io/public'
        }
    }
    

    接下来,将io.fabric工具添加到同一个gradle中的依赖项中(build.gradle)

    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.2'
        classpath 'com.google.gms:google-services:3.2.1'
        classpath 'io.fabric.tools:gradle:1.25.4'
    }
    

    一旦完成,在进入下一步之前,你的gradle . 你应该为step1
    Step1
    做这样的事情

    第2步:在你的 app level build.gradle中添加

    apply plugin: 'io.fabric'
    

    在您的依赖项中:

    dependencies {
    // ...
    implementation 'com.crashlytics.sdk.android:crashlytics:2.9.3'
    

    }

    现在再次同步并重建并运行您的项目 .

    NB:Sync right after manipulating the project level build.gradle before manipulating your app level.

    更多细节here

  • 1

    我有完全相同的问题 . 由于项目级build.gradle中的额外属性“crashlytics”而生成错误,这会产生冲突 .

    只需将额外属性“crashlitycs”更改为“crashlyticsVersion”或类似的内容,错误就会消失 .

    我还建议您在额外属性中使用后缀“Version”以避免类似的错误 .

  • 6

    在你的项目中,你应该放弃

    buildscript {
        repositories {
            ...
            maven {url 'https://maven.fabric.io/public'}
        }
       ...
    }
    

    同时在顶部的app gradle文件中

    apply plugin: 'io.fabric'
    

    并作为依赖

    implementation 'com.crashlytics.sdk.android:crashlytics:2.9.3'
    

相关问题