我无法解析已发布到我自己的以“-SNAPSHOT”结尾的工件服务器的依赖项。
我收到错误:
Could not find com.company:common:1.0.0-SNAPSHOT.
Required by:
com.company:Intranet:1.0.0-SNAPSHOT
我想通过将依赖项版本增加到 1.0.2 或更高版本 this link以为它可以解决问题,但没有效果。
我已关闭快照存储库上的唯一版本号(时间戳)。我还可以看到这些文物确实在我的文物库中,而且我没有拼写错误。一旦我发布了常规版本(例如“1.0.0”),我就能够解决它们。这是我的 build.gradle 的一部分:(是的,我没有使用artifactory 插件,我希望很快就可以使用它。)
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'
}
最佳答案
从错误输出来看,某些依赖项似乎被错误地声明为 "com-company-common:1.0.0-SNAPSHOT"
而不是 "com-company:common:1.0 .0-快照”
.
关于gradle编译似乎无法解析 "-SNAPSHOT"依赖项,即使它们存在于artifactory中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24770874/