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

时间:2017-12-10 22:12:37

标签: java android android-gradle build.gradle andengine

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

你能告诉我该怎么办吗?

  

错误:(36,0)无法在类型为org.gradle.api.internal.artifacts.dsl的对象上找到参数[com.google.firebase:firebase-appindexing:11.6.2]的方法实现()。 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'

} 

1 个答案:

答案 0 :(得分:6)

替换

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

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

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

中更新buildscript块
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依赖项的所有模块使用相同的版本。

所以你需要以这种方式更新你的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文件夹