尝试在Android Studio上构建项目时出现以下错误:
错误:方法没有签名: com.crashlytics.tools.gradle.CrashlyticsPlugin.findObfuscationTransformTask() 适用于参数类型:(java.lang.String)值: [DevDebug]
如何解决这个问题?
答案 0 :(得分:47)
这似乎是与“ io.fabric.tools:gradle”的版本“ 1.28.0”相关的问题。
通常,如果在依赖项(应用程序级别/项目级别)中使用版本控制的'...: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文件(应用程序级别/项目级别),以查看声明了上述依赖项的位置并进行相应的更改。
答案 1 :(得分:39)
嘿,由于许多Android开发人员使用,引发了此错误
classpath 'io.fabric.tools:gradle:1.+'
像这样,这样编译器就无法找到与结构版本完全匹配的对象,并且错误引发M和 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"
}
}