在我的项目构建中,我已经替换了每一个compile by implementation的出现。gradle,但是我仍然得到这个警告:

我试图在整个项目中寻找“compile”,但没有找到匹配。那么原因是什么呢?


当前回答

对我来说,解决这个问题的变通方法是我使用了一个旧版本的Gradle,可以在这里找到:

我使用的是gradle-3.0-rc-1-src版本,但其他版本也可以,尽管它可能不会比3.0版本更新。

首先将压缩文件解压到您喜欢的任何地方。

然后进入文件->设置->构建,执行,部署-> Gradle,并将设置更改为使用本地Gradle分布。在此之后,确保Gradle home字段指向刚刚解压到的目录中的. Gradle目录。

重新构建项目,一切都应该正常。

其他回答

只需从构建中添加。从构建脚本Gradle

classpath 'com.google.gms:google-services:3.2.0'

所有依赖项“compile”替换为“implementation”。

这对我很管用。

我已经更新了com.google。Gms:google-services从3.2.0升级到3.2.1,警告不再出现。

 buildscript {

    repositories {
        google()
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.1'
        classpath 'com.google.gms:google-services:3.2.1'

    }
}

https://issuetracker.google.com/issues/72479188表示插件有时会引入“编译”依赖项,这就是触发警告的原因。可能只是最简单的星号问题,并等待,直到他们修复它,指出哪些插件导致的问题。

我已经更新了com.google。Gms:google-services从3.1.1升级到3.2.0,警告停止出现。

buildscript {

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

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
    
    classpath("com.google.gms:google-services:3.2.0")
    }
}

在我的例子中,它是一个使用compile来实现传递依赖的旧依赖:com.jakewharton.hugo

将它从我的gradle中删除后,它编译了。