我的项目在包含不同模块的 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/