我想在Gradle项目中将工件发布到Nexus 3。 由于需要,请从Jenkins发布,而不是使用build.gradle maven-publish插件进行gradle publish。 我创建并执行了一个JenkinsPipeline脚本,但是工件jar和pom已分离。为什么?
https://plugins.jenkins.io/nexus-artifact-uploader
然后我制作了JenkinsPipeline脚本。
泛滥的管道脚本。
const pthread_mutex_t
部分执行日志
pipeline {
...
stage("publish to nexus") {
steps {
script {
pom = readMavenPom file: "build/pom.xml";
artifactPath = "build/libs/gs-managing-transactions-0.1.0.jar"
artifactExists = fileExists artifactPath;
if(artifactExists) {
nexusArtifactUploader(
nexusVersion: NEXUS_VERSION,
protocol: NEXUS_PROTOCOL,
nexusUrl: NEXUS_URL,
groupId: pom.groupId,
version: pom.version,
repository: NEXUS_REPOSITORY,
credentialsId: NEXUS_CREDENTIAL_ID,
artifacts: [
[artifactId: pom.artifactId, classifier: '', file: artifactPath , type: pom.packaging],
[artifactId: pom.artifactId, classifier: '', file: "build/pom.xml", type: "pom"]
]
);
} else {
error "*** File: ${artifactPath}, could not be found";
}
}
}
}
...
}
为什么要存储单独的工件,例如“ sample-spring-managing-transactions-0.0.1-20190621.123700-7-debug.jar”,“ sample-spring-managing-transactions-0.0.1-20190621.123701-8-debug.pom” “。
我会期待的。
“ sample-spring-managing-transactions-0.0.1-20190621.123700-7-debug.jar”“” sample-spring-managing-transactions-0.0.1-20190621.123701-7-debug.pom“
答案 0 :(得分:0)
解决了。我错过了“此插件不支持上传Maven工件快照”的描述。 plugins.jenkins.io/nexus-artifact-uploader。