我收到错误:配置'compile'已经过时,已被'implementation'取代.它将在2018年底删除

Kum*_*aja 14 plugins gradle android-studio

更新Android Gradle插件和Android Studio后出现此错误.

我已经检查了这个问题(Android Studio build.gradle警告消息),但我无法运行该项目.

Yas*_*ash 23

一步一步的解决方案

1-转到build.gradle(模块应用程序)

2-在依赖项中,您将看到这样的代码

compile fileTree(dir: 'libs', include: ['*.jar'])
testCompile  'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.android.support:support-v4:23.3.0'
compile 'com.android.support:design:23.3.0'
Run Code Online (Sandbox Code Playgroud)

3-现在,您必须使用testImplementation将implementation和testCompile 替换为compile.像这样

implementation fileTree(dir: 'libs', include: ['*.jar'])
testImplementation  'junit:junit:4.12'
implementation  'com.android.support:appcompat-v7:23.3.0'
implementation  'com.android.support:support-v4:23.3.0'
implementation  'com.android.support:design:23.3.0'
Run Code Online (Sandbox Code Playgroud)

4-就是这样.现在单击"立即同步"按钮.

- 请勿更改代码中指定的数字或版本.


Rev*_*ppa 8

这是完整的解决方案:

脚步

1)在gradle文件中使用新的依赖关系配置用实现替换compile对于ex:

dependencies {
    compile 'com.android.support:support-v4:27.0.3'
}
Run Code Online (Sandbox Code Playgroud)

应该:

dependencies {
    implementation 'com.android.support:support-v4:27.0.3'
}
Run Code Online (Sandbox Code Playgroud)

b)替换testCompiletestImplementation

例如:

testCompile 'junit:junit:4.12'
Run Code Online (Sandbox Code Playgroud)

应该

testImplementation 'junit:junit:4.12'
Run Code Online (Sandbox Code Playgroud)

c)对库代替compileapi

2)将 class.path.gms:google-services升级到classpath'com.google.gms:google-services:3.2.0'在build.gradle文件中(使用最新版本)

3)文件 - >无效缓存

仍然不工作:然后尝试以下步骤

1)关闭项目.

2)删除.gradle文件夹.

3)再次打开项目

现在它会起作用


小智 2

查看 build.gradle 中的依赖项。在任何地方进行编译,更改为实现。例如:

dependencies {
    compile 'com.android.support:support-v4:27.0.3'
}
Run Code Online (Sandbox Code Playgroud)

应该:

dependencies {
    implementation 'com.android.support:support-v4:27.0.3'
}
Run Code Online (Sandbox Code Playgroud)