You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Gradle maven-publish插件发布至Artifactory报401 Unauthorized排查

Gradle maven-publish 对接Artifactory触发401错误的诱因定位

典型报错表现:无法PUT请求'https://xxx.jar',服务器返回状态码401 Unauthorized


核心诱因

该问题和Gradle版本、maven-publish插件逻辑、Artifactory仓库权限、认证方式选择均无关,根本原因是Gradle读取凭证时,加载的properties配置文件写法不符合Java Properties的解析规则,导致实际传给私服的密码携带了多余的双引号字符,凭证不匹配被服务器拦截。

问题形成逻辑拆解

  • Java Properties工具类的默认解析逻辑中,配置项值两侧包裹的双引号不会被自动剥离,和Maven的配置解析规则存在本质差异:
    • 若配置文件中写为password="actual_password",程序读取到的实际密码值会包含首尾的双引号,最终向Artifactory传递的是带引号的错误凭证,自然无法通过校验。
    • 只有配置写法为password=actual_password时,读取到的密码才是无多余字符的正确值。
  • 为什么同样的凭证走Maven命令能成功上传:Maven在解析自身配置文件时,会自动移除值两侧包裹的双引号,传递给服务器的是正确的无引号凭证,因此不存在校验失败问题。
  • 为什么开启Basic、Digest认证配置也解决不了问题:认证握手逻辑调整并不能修正传递的凭证本身的错误值,无论选择哪种认证方式,带双引号的错误密码都无法通过Artifactory的身份校验。

修复方案

直接修改对应properties配置文件内的用户名、密码写法,移除包裹值的多余双引号,保证Gradle读取到的凭证和私服存储的正确值完全一致即可。

内容的提问来源于stack exchange,提问作者FredSuvn

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.31 08:45:00