Failed to deploy artifacts: Could not transfer artifact ReasonPhrase: Bad credentials

博主加入项目后遭遇无法部署的问题,起初以为是权限不足,后发现是由于Maven版本差异所致。从3.6.0降至同事使用的3.3.9版本后,部署问题得以解决。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

加入项目以后没有deploy的能力,开始以为自己是新人,没有分给自己权限,也没再问.

后来不部署代码很不方便就跟项目经理去要,结果人家说根本没设置什么权限.

后来跟同事要了他的maven配置文件,发现里面也没什么特别的设置.

最后发现自己的maven版本是3.6.0 同事用的3.3.9,版本降下来以后就好了.

这只是本人遇到的问题,并不代表这个报错就是这么解决,有类似情况的同学可以这么尝试一下

 

 

### 配置 Jenkins Pipeline 进行 Java JAR 包部署 #### 创建并配置新项目 为了创建一个新的 Jenkins 流水线来处理 Java 应用程序的构建和部署,需进入 Jenkins 的仪表板点击 "New Item" 并选择 "Pipeline"[^1]。 #### 安装必要的插件 确保安装了所有必需的插件以便支持流水线操作以及特定于项目的工具集成。对于 Maven 构建来说,应该有 `Maven Integration Plugin` 和 `Pipeline Maven Integration Plugin` 插件;如果涉及前端开发,则可能还需要 `NodeJS Plugin` 及其流程节点扩展[^2]。 #### 设置全局工具环境变量 在 Jenkins 系统设置里添加 JDK 版本(建议使用 LTS 版本如 11 或者 17),这样可以在后续阶段指定使用的具体版本。 #### 编写 Jenkinsfile 实现自动化脚本 下面是一个简单的 Jenkinsfile 示例用于展示如何定义一个 CI/CD 流程: ```groovy pipeline { agent any environment { JAVA_HOME = tool name: 'JDK_11', type: 'hudson.model.JDK' } stages { stage('Checkout') { steps { git branch: 'main', url: 'https://github.com/user/repo.git' // 替换成实际仓库地址 } } stage('Build with Maven') { steps { sh "${tool name: 'Maven_3.8.x', type: 'hudson.tasks.Maven'} clean package" } } stage('Deploy Artifact to Nexus Repository'){ when{ expression{ return env.BRANCH_NAME ==~ /^(release|hotfix)/ } // 假设只针对 release/hotfix 分支执行此步 } steps { script { def serverId = credentials('nexus-server-id') nexusArtifactUploader( nexusVersion: 'nexus3', protocol: 'http', nexusUrl: 'your-nexus-url', groupId: 'com.example.groupid', version: "${env.BUILD_NUMBER}", repository: 'releases', credentialsId: serverId, artifacts: [ [artifactId: 'project-name', classifier: '', fileType: 'jar', file: '**/*.jar'] ] ) } } } } } ``` 这段 Groovy 脚本描述了一个典型的持续交付管道,它会检出源码、编译打包应用并通过 Nexus 上载最终制品。注意这里的 `credentials()` 函数用来获取存储在 Jenkins 中的安全凭证 ID,而 `nexusArtifactUploader` 是由官方提供的上传组件之一[^4]。 #### 修改编码方式以防止乱码问题 编辑位于 Jenkins 主目录中的 `jenkins.xml` 文件,在 JVM 参数部分加入 `-Dfile.encoding=UTF-8` 来强制设定字符集为 UTF-8,从而避免可能出现的文字显示异常情况[^5]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值