我无法解析我发布到以“-SNAPSHOT”结尾的神器服务器的依赖项。
我收到错误:
Could not find com.company:common:1.0.0-SNAPSHOT.
Required by:
com.company:Intranet:1.0.0-SNAPSHOT
我认为通过将依赖版本增加到每this link 1.0.2或更高版本可以解决问题,但它没有效果。
我已关闭快照存储库上的唯一版本号(时间戳)。我也可以看到文物确实在我的神器中,而且我没有错别字。一旦我发布了诸如“1.0.0”的常规版本,我就能够解决它们。这是我的build.gradle的一部分:(是的,我没有使用神器插件,我希望尽快转向。)
apply plugin: 'java'
apply plugin: 'war'
apply plugin: 'maven'
group = 'com.company'
version = '1.0.0-SNAPSHOT'
def commonDep = "com.company:common:1.0.0-SNAPSHOT"
def newCommonDep = "com.company:new-common:1.0.0-SNAPSHOT"
configurations {
deployerJars
overlayJars
}
//From the maven plugin
uploadArchives {
repositories.mavenDeployer {
uniqueVersion = false
configuration = configurations.deployerJars
snapshotRepository(url:"${artifactory_contextUrl}/ident-snapshot") {
authentication(userName: "${artifactory_user}", password:
"${artifactory_password}")
}
repository(url:"${artifactory_contextUrl}/ident-release") {
authentication(userName: "${artifactory_user}", password:
"${artifactory_password}")
}
}
}
repositories {
mavenCentral()
maven {
url "${artifactory_contextUrl}/central"
credentials {
username = "${artifactory_user}"
password = "${artifactory_password}"
}
}
}
dependencies {
//jar used for maven deploy
deployerJars "org.apache.maven.wagon:wagon-http:2.2"
//grab newCommon and common war to do an overlay with the intranet war
overlayJars commonDep + '@war', newCommonDep + '@war'
compile commonDep + ':classes'
compile newCommonDep + ':classes'
providedCompile 'javax:javaee-api:7.0'
}
答案 0 :(得分:3)
从错误输出中,似乎某些依赖项被错误地声明为"com-company-common:1.0.0-SNAPSHOT"
而不是"com-company:common:1.0.0-SNAPSHOT"
。
答案 1 :(得分:2)
这完全是我自己的错,但不过我会回答我自己的问题。 "中心" repo定义实际上并没有包含快照repo所在的" -SNAPSHOT"找到了。我以为它做到了。 "中部"在我们公司的上下文中是一个包含一些回购的虚拟仓库,但不是快照回购。我实施了一个我发现here的解决方案。或者我可以在" central"旁边宣布存储库。一。