java如何让gradle在本地maven repo中覆盖库?
我有三个安卓项目正在开发中——让我们称它们为Alpha、Bravo和Charlie。Bravo和Charlie都依赖于安卓库Alpha。当我创建Alpha时,我使用./gradlew install
将其部署到本地maven存储库中,如果我在Bravo和Charlie的build.gradle
文件中使用以下内容,这很好:
dependencies {
compile 'com.blah.alpha:alpha:1.1.0+@aar'
}
不过,问题是这三个项目都在开发中。因此,当我更新Alpha并将其部署到本地Maven存储库时,Bravo和Charlie似乎看不到本地版本,除非我执行以下操作:
$ cd ~/.m2/repository/com/blah/alpha/
$ rm -rf 1.1.0
$ cd -
$ ./gradlew install
也就是说,在部署到本地Maven存储库之前,我需要手动检查并清理它。版本号没有改变,所以我想知道这是否是它没有得到库的最新版本的原因
# 1 楼答案
静态版本就是其中的一部分。您可以将您的版本更改为
1.1.0-SNAPSHOT
,Gradle认为这是一个“正在更改”的模块。然而,Gradle仍然默认每24小时重新下载一次工件。您可以重写此行为,并指示Gradle根本不缓存更改的模块。更多信息可以在Gradle docs中找到如果你不愿意更改你的工件版本,你可以尝试使用^{} 罢工>编辑:你可以告诉Gradle你的依赖关系是一个不断变化的依赖关系