安卓。将 gradle 从 gradle-4.10.2 升级到 gradle 5.+ 会导致编译时缺少一些依赖项

标签 android gradle

我的项目在包含不同模块的 Android 库中有一个依赖项(具有不同子模块的 App 模块)

当我从 4.10 升级到 5+ 时,我的项目中的一些依赖项在编译时丢失了。

我尝试使用 API,但没有任何区别

任何想法,将不胜感激

谢谢

最佳答案

最可能的解释是,在传递依赖项的 chan 中,您依赖于具有 runtime 的依赖项。 Maven 元数据中的范围。

从 Gradle 5.0 开始,这些依赖项在编译时不再可用,以更好地尊重它们的元数据语义。

一种确认方法是运行 ./gradle <project>:dependencies --configuration compileClasspath在您受影响的project (如果这涉及根项目,请删除)并将输出与 Gradle 4.10 和 5.+ 进行比较。

你也可以看看the migration notes关于这个话题

关于安卓。将 gradle 从 gradle-4.10.2 升级到 gradle 5.+ 会导致编译时缺少一些依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59141737/

相关文章:

android - 带有完成操作按钮的多行 EditText

android - 从 GPS 获取位置并在 android 中的谷歌地图上设置标记

android - android中的Gsm网络参数

java - DialogFragment中的onBackPressed和onCancel有什么区别?

testing - 在 Gradle 项目中跨不同类型的测试模块共享 Java 测试助手类

android - 如何设置多个AlarmManager?

Android aar 已停止使用 extractDebugAnnotations com/intellij/psi/PsiJavaFile android 构建

gradle - Gradle>如何将仅具有所需依赖项jar的JAR部署到远程计算机

java - Android 应用程序 + Java 模块 (Java 1.8)

android - Google Speech API示例,无法解析R