我有几个项目共享一些本地开发的图书馆;随着使用它们的应用程序的增长,这些库从静态到灵活更新都有所不同。
为了调试/更新目的,将它们作为我项目的一部分是很有用的(当发布新的库版本时,如果在运行主应用程序项目时发现错误,我可以根据需要测试/更新库)。
对于构建目的而言,重建项目时它也会重建(有时是大型)库,这很痛苦。
从我的角度来看,如果某些库可以设置为不重建或清理,除非明确完成,否则这将是理想的。或者,如果我可以在JAR / AAR库与完整模块之间切换它们。
此时我想知道是否有更好的方法。
因此,如果您想在项目中包含库(用于编辑/更新)但不希望它一直在重建,有没有办法,最佳做法是什么?
FWIW,我目前的基本结构是:
MainApp
答案 0 :(得分:0)
您可以将库作为单独的项目,然后使用库中的maven plugin
将其安装为本地工件。阅读更多Deploying an Artifact to the Local Cache in Gradle
在您的项目中,您需要将mavenLocal()添加到根build.gradle中的存储库:
repositories {
mavenCentral()
mavenLocal()
}
并将依赖项添加到项目build.gradle:
dependencies {
...
compile 'com.your.library:x.y.z'
...
}
但是如果您的项目在本地网络中共享,则需要使用Artifactory by JFrog或Nexus Repository Manager by Sonatype等存储库管理。