0
我有一个构建工具将版本绑定到SCM。我在本地构建时无法设置jar的版本。如果有人要改变我在本地工作的东西,它会推送版本号(我可以得到),但是当我发布到本地回购(常春藤)时,Gradle似乎更喜欢外部回购。Gradle倾向于重复条目的存储库
的build.gradle
repositories {
mavenCentral()
ivy {
url "${System.properties['user.home']}/.ivy2/local/"
layout "pattern", {
artifact "[organization]/[module]/[revision]/[artifact](-[classifier]).[ext]"
ivy "[organization]/[module]/[revision]/ivy.xml"
}
}
ivy {
url "https://repo/"
layout "pattern", {
artifact myPattern
ivy myIvyPattern
}
}
}
不改变构建为我编辑的罐子。我怎样才能让gradle始终更喜欢本地回购?我有一种感觉,resolutionStrategy
可能是最好的方式,但我不知道如何实现这一点。
编辑1
为了帮助澄清,Artifactory的有一个罐子(詹金斯出版)与1.2.3版本。我有一个本地构建的jar,保存到我的本地存储库中作为1.2.3。当我建立一个项目时,我的仓库关闭中有两个仓库(我的本地仓库),Gradle似乎从Artifactory中抽取了一个仓库。
编辑2
相关定义
dependencies {
compile ('company:project:1.2.+')
}
增加了更多细节。我没有使用固定版本。它使用'compile'组:package:1.2。+''。这是问题吗? – Ethan
如果两个回购都具有相同的最高版本,我希望它从早先宣布的回购中选择一个,但我并不十分确定。没有其他的方式来影响秩序。区分版本可能会更好,例如通过给本地版本添加时间戳和/或给它一个不同的状态(例如集成与释放)。 –
好的。我会去改变ant构建文件。希望我们很快会更新到所有地方。谢谢(你的)信息。 – Ethan