[英]Gradle Android project dependency not working
我正在尝试从maven迁移到Gradle以进行Android项目,并且面临以下问题:我有三个项目,即
root
- projlib
build.gradle
- projA
build.gradle
- projB
build.gradle
build.gradle
settings.gradle
基本上,我要实现的是projB依赖于projA和projlib。 projlib是一个lib文件夹,可编译并生成一个lib(jar)文件。 projA是一个Android应用程序,而projB是另一个需要在projA中引用代码的Android应用程序。 现在我在projB build.gradle文件中添加的是
dependencies {
compile project(':projlib')
compile project(':projA')
}
所以说如果projlib中有FooProjLib类,而projA中有FooProjA类
然后在projB中我可以做
FooProjLib foo = new FooProjLib
哪个很好
但是当我这样做
FooProjA foo = new FooProjA
Gradle给我的软件包projA不存在,我观察到的是这两个依赖关系都已解决,但是只有lib可以被引用,而apk不能。
有谁知道如何解决这个问题?
您不能完全按照自己的意愿做。 projA无法构建应用程序(即APK),并且还依赖于它。 如果projA是Android库,则projB只能依赖projA,这意味着在其构建文件中您具有以下声明:
apply plugin: 'android-library'
代替
apply plugin: 'android'
当然,这意味着projA不会构建APK,而是会构建AAR。
如果projA也需要是APK,则必须重新组织事情,以便projB也需要的projA中的通用代码移到共享库中。 如果两个项目都相似,也许您可能只需要一个模块,并使用项目风格来区分它们。 如果没有很多信息,很难说这是否是一个好方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.