找不到参数的方法实现()

Could not find method implementation() for arguments

我尝试 运行 我的应用程序,但 gradle 不想编写它。

你能告诉我我该怎么做吗?

Error:(36, 0) Could not find method implementation() for arguments [com.google.firebase:firebase-appindexing:11.6.2] on object of type org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler.

我的应用build.gradle文件

 minSdkVersion 14
        targetSdkVersion 22
        signingConfig signingConfigs.config
    }
    buildTypes {
        release {
            debuggable false
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
            signingConfig signingConfigs.config
        }
    }
    lintOptions {
        disable 'MissingTranslation'
    }
    productFlavors {
    }
}
dependencies {
    implementation 'com.google.firebase:firebase-appindexing:11.6.2'
    compile project(':AndEngine')
    compile files('libs/gson-2.8.0.jar')
    compile 'com.android.support:support-v4:22.2.1'
    compile 'com.google.firebase:firebase-core:10.2.4'
    compile 'com.google.code.gson:gson:2.8.0'
    compile 'com.google.android.gms:play-services-ads:10.2.4'
    compile 'com.google.firebase:firebase-ads:10.2.4'
    compile 'com.google.firebase:firebase-crash:10.2.4'

} 

替换

implementation 'com.google.firebase:firebase-appindexing:11.6.2'

compile 'com.google.firebase:firebase-appindexing:11.6.2'

您需要更新 gradle 版本才能使用 implementation。 您可以在项目中更新您的构建脚本块 build.gradle

buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'


    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    }
}

compile 已弃用,未来的 gradle 版本将不再支持它。

因此,为了让您的项目编译,只需按照我的建议更改该行,但请考虑更新您的 gradle 版本并对所有依赖项使用 implementation

更新

您应该为您的 firebase 依赖项的所有模块使用相同的版本。

因此您可能需要以这种方式更新您的应用程序build.gradle

dependencies {
    compile 'com.google.firebase:firebase-appindexing:11.6.2'
    compile project(':AndEngine')
    compile files('libs/gson-2.8.0.jar')
    compile 'com.android.support:support-v4:22.2.1'
    compile 'com.google.firebase:firebase-core:11.6.2'
    compile 'com.google.code.gson:gson:2.8.0'
    compile 'com.google.android.gms:play-services-ads:11.6.2'
    compile 'com.google.firebase:firebase-ads:11.6.2'
    compile 'com.google.firebase:firebase-crash:11.6.2'
} 

或者您可能有新的构建错误。

还有

compile 'com.android.support:support-v4:22.2.1'

不是最新版本,可能会带来新问题。

但我建议循序渐进:)

更新 2

如果你用这种方式声明对 gson 的依赖

compile 'com.google.code.gson:gson:2.8.0'

你不需要

compile files('libs/gson-2.8.0.jar')

它是多余的,而且您可以释放无用 jar 文件的 libs 文件夹