【发布时间】:2015-06-24 09:18:58
【问题描述】:
我是使用 gradle 构建的新手。目前,我尝试实现使用项目 A 的构建结果的项目 B 的构建,该构建结果部署到工件。我正在使用 Gradle 2.2。详情:
项目 A 的 build.gradle 包含:
version = '1.0.0-SNAPSHOT'
group = 'at.mic.projectA'
每次构建项目 A 时,应用插件“maven”会在工件中生成一个新工件,例如 at.mic.projectA-1.0.0-20150624.073846-2.jar(和 .pom)。
项目 B 的 build.gradle 包含:
dependencies {
compile group: 'at.mic.projectA', name: 'at.mic.projectA', version:'1.0.0+'
...
}
'at.mic.at.mic.projectA',版本:'1.0.0+' 首次构建项目 B 时,此依赖关系已正确解析,并从 artifactory 下载最新的 at.mic.projectA-*.jar。
如果我更改项目 A 的某些源并重新构建它,我会在项目 B 的构建过程中期待两件事:
- 下载最新工件 at.mic.projectA-*.jar 和
- 重新编译项目 B。
不幸的是,这并没有发生。即使我删除了 user_home/caches 的内容以强制使用新工件,这些也已下载,但 gradle 不会重新编译项目 B - 它写入日志:
:compileJava UP-TO-DATE
:processResources UP-TO-DATE
:classes UP-TO-DATE
:jar UP-TO-DATE
:uploadArchives
我的配置有问题吗?提前致谢!
弗兰克
【问题讨论】:
-
听起来你需要为动态版本更改default cache settings。
-
谢谢@BenManes,这就是我寻找的解决方案。
标签: gradle snapshot artifactory