Nexus Artifact Uploader为什么将工件存储在单独的目录中?

时间:2019-06-21 12:57:29

标签: groovy jenkins-plugins nexus

我想在Gradle项目中将工件发布到Nexus 3。 由于需要,请从Jenkins发布,而不是使用build.gradle maven-publish插件进行gradle publish。 我创建并执行了一个JenkinsPipeline脚本,但是工件jar和pom已分离。为什么?

以下站点指向thisthis

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“

1 个答案:

答案 0 :(得分:0)

解决了。我错过了“此插件不支持上传Maven工件快照”的描述。 plugins.jenkins.io/nexus-artifact-uploader。