我有一个应用程序使用库A转换为使用Gradle 4.5.1(从3.5.1)构建.库A又依赖于库B,库B也被转换为使用Gradle 4.5.1.
当尝试使用库A构建时,应用程序构建现在失败(它不直接包含对库B的依赖).构建错误是针对来自库B的资源的资源未找到错误.
应用:
dependencies {
implementation('com.example:libraryA:version@aar') {
transitive = true
}
}
图书馆A:
dependencies {
implementation 'com.example:libraryB:version@aar'
}
如果我直接在应用程序的依赖项中包含库B,那么构建工作,但我不想这样做,因为我不想在应用程序中指定库A的依赖项,我不想因为A使用的版本递增,所以必须不断更新库B的版本.
如果我使用compile指令而不是实现,它也会构建,但是,我不想这样做,因为编译将被淘汰.此外,使用api似乎没有解决问题.
如何在不需要指定库A的依赖项的情况下使构建工作?
解决方法:
使用api而不是实现:
API( ‘com.示例:LibraryA的:版本@ AAR’)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。