错误:方法没有签名:com.crashlytics.tools.gradle.CrashlyticsPlugin.findObfuscationTransformTask()


75

尝试在Android Studio上构建项目时出现以下错误:

错误:没有方法签名:com.crashlytics.tools.gradle.CrashlyticsPlugin.findObfuscationTransformTask()适用于参数类型:(java.lang.String)值:[DevDebug]

如何解决呢?


许多人在Fabric crashlytic上报告了此错误。他们正在为此工作。
Hitesh Tarbundiya

发布您的应用程序级别的build.gradle代码。
维拉·帕特尔

谢谢@VirajPatel。我现在找到了解决方法。我在项目级别的gradle文件中添加了classpath依赖项。
M. Arabi Hasan Sakib

非常感谢@HiteshTarbundiya。希望他们能尽快提出解决方案。无论如何,我目前已降级至1.27.1,这似乎可以解决此问题。
M. Arabi Hasan Sakib

Answers:


110

编辑:在继续下面的解决方案之前,请首先更新到最新的稳定版本的Fabric Gradle工具,并检查问题是否已解决。在进行此编辑时,有人声称更新到1.31.2版已解决了该问题。

这似乎是与的版本“ 1.28.0”相关的问题"io.fabric.tools:gradle"

如果groupId:artifactId:n.+在依赖关系(应用程序级别/项目级别)中使用版本控制结构,通常会发生这种问题。在这种情况下:

dependencies {
    classpath 'io.fabric.tools:gradle:1.+'
}

由于它会自动更新版本,因此,如果最新版本中存在任何致命错误,则该项目很可能会因构建/运行时错误而崩溃。

Android Studio始终建议:'避免使用+版本号;可能导致无法预测和不可重复的构建...'

发现一个可行的解决方案正在降级到特定的先前版本(例如1.27.1)或降级到1.28.0之前的任何其他稳定的最新版本,例如:

dependencies {
    classpath 'io.fabric.tools:gradle:1.27.1'
}

记住要检查两个gradle文件(应用程序级别/项目级别),以查看上述依赖项的声明位置并进行相应更改。


2
工作对我来说很好
Manikandan K

58

嘿,由于许多android开发人员使用,引发了此错误

classpath 'io.fabric.tools:gradle:1.+'

像这样,这样编译器就无法找到结构版本的完全匹配并引发错误,M。Arabi Hasan Sakib也是正确的

classpath 'io.fabric.tools:gradle:1.28.0'

M. Arabi Hasan Sakib提到的解决方案也正在起作用。我尝试下面的代码,它对我有用,希望它对您也有用,或者只是替换如下代码

classpath 'io.fabric.tools:gradle:1.27.1'

(将此代码放入应用目录中的build.gradle中)

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

    dependencies {
        classpath 'io.fabric.tools:gradle:1.27.1'
    }
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'

repositories {
    maven { url 'https://maven.fabric.io/public' }
    maven { url "https://jitpack.io" }
    maven {
        url "http://dl.bintray.com/lukaville/maven"
    }
}

谢谢@MaheshKeshvala提供的解决方案,但我认为之所以会产生此问题,并不是因为“ ...编译器找不到与织物版本完全匹配并引发错误...”,而是因为它指向的是最新版本1.28 .0,并且其中有一个已知的错误。但是,在发布此问题之前,我已降级到以前的版本,这有所帮助。因此,我想通过发布问题来分享该解决方案。再次感谢:-)
M. Arabi Hasan Sakib

是的@ M.ArabiHasanSakib你是正确的,我在我的回答中也提到你的答案是正确的,但是我io.fabric.tools:gradle:1.+织物版本和错误引发,所以我写说编译器不能编译混合1. +或其他任何版本。感谢您的回答,对于面对此类错误的人来说,它非常有价值。
Mahesh Keshvala

3
我拥有所有这些内容,但是我仍然无法构建。
马龙

我收到与原始问题相同的错误。我通过将两个build.gradle文件编辑为'io.fabric.tools:gradle:1.27.1'来解决此问题,而不仅仅是在应用程序目录中。
马龙

1
@KishorPawar我建议您使用面料1.31.2的最新版本。Fabric将所有旧问题解决到此最新版本中。
Mahesh Keshvala'4
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.