问题描述
当使用 Nexus Artifact Uploader 插件从 jenkins 部署到 nexus 时,我收到以下错误:
java.lang.NullPointerException
at sp.sd.nexusartifactuploader.steps.NexusArtifactUploaderStep.getUsername(NexusArtifactUploaderStep.java:132)
at sp.sd.nexusartifactuploader.steps.NexusArtifactUploaderStep$Execution.run(NexusArtifactUploaderStep.java:239)
at sp.sd.nexusartifactuploader.steps.NexusArtifactUploaderStep$Execution.run(NexusArtifactUploaderStep.java:217)
at org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1$1.call(AbstractSynchronousNonBlockingStepExecution.java:47)
at hudson.security.ACL.impersonate2(ACL.java:449)
at hudson.security.ACL.impersonate(ACL.java:461)
at org.jenkinsci.plugins.workflow.steps.AbstractSynchronousNonBlockingStepExecution$1.run(AbstractSynchronousNonBlockingStepExecution.java:44)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
但是 jenkinsfile 中的所有内容都是正确的(凭据 ID 等)
詹金斯文件:
agent any
tools {
jdk 'jdk-14'
}
environment {
NEXUS_VERSION = "nexus3"
NEXUS_PROTOCOL = "https"
NEXUS_URL = "repo.vironlab.eu"
NEXUS_REPOSITORY = "maven-snapshot"
NEXUS_CREDENTIAL_ID = "nexus"
PROJECT_VERSION = "2.0.0-SNAPSHOT"
}
stages {
stage("Clean") {
steps {
sh "chmod +x ./gradlew";
sh "./gradlew clean";
}
}
stage("Build") {
steps {
sh "./gradlew build";
}
post {
success {
archiveArtifacts artifacts: 'vextension-common/build/libs/vextension-common.jar',fingerprint: true
archiveArtifacts artifacts: 'vextension-minecraft-server/build/libs/vextension-minecraft-server.jar',fingerprint: true
archiveArtifacts artifacts: 'vextension-minecraft-proxy/build/libs/vextension-minecraft-proxy.jar',fingerprint: true
}
}
}
stage("Build ShadowJar") {
steps {
sh "./gradlew shadowJar";
}
post {
success {
archiveArtifacts artifacts: 'vextension-common/build/libs/vextension-common-full.jar',fingerprint: true
archiveArtifacts artifacts: 'vextension-minecraft-server/build/libs/vextension-minecraft-server-full.jar',fingerprint: true
archiveArtifacts artifacts: 'vextension-minecraft-proxy/build/libs/vextension-minecraft-proxy-full.jar',fingerprint: true
}
}
}
/*stage("Docs") {
steps {
sh "./gradlew dokkaHtmlMultiModule";
sh "rm -r /var/www/docs/vextension-v2.0.0"
sh "mkdir /var/www/docs/vextension-v2.0.0"
sh "cp -r build/vextension-v2.0.0 /var/www/docs/"
}
}*/
stage("Sources") {
steps {
sh "./gradlew kotlinSourcesJar";
}
post {
success {
archiveArtifacts artifacts: 'vextension-common/build/libs/vextension-common-sources.jar',fingerprint: true
archiveArtifacts artifacts: 'vextension-minecraft-server/build/libs/vextension-minecraft-server-sources.jar',fingerprint: true
}
}
}
stage("Publish") {
steps {
script {
nexusArtifactUploader(
nexusversion: NEXUS_VERSION,protocol: NEXUS_PROTOCOL,nexusUrl: NEXUS_URL,groupId: "eu.vironlab.vextension",version: PROJECT_VERSION,repository: NEXUS_REPOSITORY,credentialsId: NEXUS_CREDENTIAL_ID,artifacts:
[
[
artifactId: "vextension-common",classifier: '',file : "vextension-common/build/libs/vextension-common.jar",type : "jar"
],[
artifactId: "vextension-common",classifier: 'sources',file : "vextension-common/build/libs/vextension-common-sources.jar",file : "vextension-common/build/pom/pom.xml",type : "pom"
],[
artifactId: "vextension-minecraft-server",file : "vextension-minecraft-server/build/libs/vextension-minecraft-server.jar",file : "vextension-minecraft-server/build/libs/vextension-minecraft-server-sources.jar",file : "vextension-minecraft-server/build/pom/pom.xml",[
artifactId: "vextension-minecraft-proxy",file : "vextension-minecraft-proxy/build/libs/vextension-minecraft-proxy.jar",file : "vextension-minecraft-proxy/build/libs/vextension-minecraft-proxy-sources.jar",file : "vextension-minecraft-proxy/build/pom/pom.xml",type : "pom"
]
]
);
}
}
}
}
}
有没有人知道我该如何解决这个错误?我在 Jenkinsfile 或我的 jenkins 配置中找不到任何错误。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)