私有仓库中推送包时提示409错误
-
请检查云效私有仓库是否允许覆盖,尝试将包版本改为一个新版本或者将 Maven 包版本置为 SNAPSHOT 包再上传,Snapshot 没有同版本不允许上传的限制。
-
如果是确认仓库中没有这个版本的包并且提示409,需要检查一下是不是在 pom.xml 等文件中有额外配置的插件,导致它会被推送两次,具体内容参见 Maven release plugin fails : source artifacts getting deployed twice。
通过流水线向私有仓库中推送 Maven 包时(执行 deploy )提示认证错误
如果日志中显示推送的仓库地址的ID(也就是图片中框出来的)跟云效制品仓库中的 ID 不一致,请检查用户 pom 文件中的配置是否存在问题。
本地向私有仓库中推送 Maven 包时(执行 Deploy )提示认证错误
-
如果日志中显示推送的仓库地址的ID(也就是图片中框出来的)跟云效制品仓库中的 ID 不一致,请检查用户 pom 文件中的配置是否存在问题。
-
本地使用的 Settings 文件要确保配置正确,在代码根目录下运行
mvn clean deploy -s settings.xml -U -DskipTests-
注意:
-s参数为拥有权限往私有仓库 push 包的账号(参考仓库成员权限)登录云效私有仓库下载的settings.xml 的文件路径。 -
为了确保本地 settings.xml 配置正确,请在本地运行 mvn help:effective-settings ,通过日志查看私库地址是否已经配置进去。
-
云效流水线 Java 构建失败,下载不到依赖包
请检查流水线全局设置 - 构建设置是否存在问题,确保其指定了正确的私有仓库,或者上传了正确的settings文件。
Java 构建上传制品仓库报错413
[executionStep begins at 2025-01-21 16:56:29]
########################################################################
# name : ArtifactUpload
# version : v1.3.87
# description : artifact upload
# help url : https://atomgit.com/flow-step/ArtifactUpload.git
# build id : d6fa0576-8c21-4cb8-9bff-fd98ff3be0f4
########################################################################
2025-01-21 16:56:29 [INFO] Start to pack artifact
2025-01-21 16:56:29 [INFO] PackInputs, {"projectDir":"/root/workspace/__flow_work/__flow_builds/fd3350cb-eb28-4cf2-bb0d-08b66878a56c/workspace/aiforos_installer_KHx3","sourcePath":["dist/aiforos-airgap-images"],"filePath":"dist/aiforos-airgap-images","gitIgnore":"false","includePathInArtifact":"false","artifactFullName":"/root/workspace/__flow_work/__flow_builds/fd3350cb-eb28-4cf2-bb0d-08b66878a56c/workspace/packages/aiforos-airgap-images.tgz"}
2025-01-21 16:56:29 [INFO] Pack single file without file path
2025-01-21 17:02:11 [INFO] Upload /root/workspace/__flow_work/__flow_builds/fd3350cb-eb28-4cf2-bb0d-08b66878a56c/workspace/packages/aiforos-airgap-images.tgz to PACKAGES, and artifact version is master-20250121116
2025-01-21 17:02:12 [ERROR] "Request failed with status code 413"
2025-01-21 17:02:12 [ERROR] "<html>\r\n<head><title>413 Request Entity Too Large</title></head>\r\n<body>\r\n<center><h1>413 Request Entity Too Large</h1></center>\r\n<hr><center>nginx</center>\r\n</body>\r\n</html>\r\n"
2025-01-21 17:02:12 [ERROR] Failed to upload artifact
目前单个制品的最大存储空间为2G。如果在打包前代码目录或包的大小超出此限制,建议将其拆分为多个包,以便分阶段进行构建和上传,或者用不同目录分别进行构建不同的包。
本地构建失败,下载不到依赖包
本地构建失败的排查思路
-
访问云效制品仓库 Packages,在制品搜索中搜索依赖包,如果不存在,请上传到私有仓库中;如果已经存在,请进行下一步操作。
-
查看制品仓库的仓库指南页面,确保本地正确配置了仓库的访问(如 Maven 的 settings.xml,Npm 的 Registry 和认证设置)
-
对于 Maven 仓库,按照仓库指南准备一份 settings.xml ,在本机新建一个空的目录,比如 /tmp/repo,然后在代码根目录下运行
mvn clean install -s settings.xml -U -DskipTests -Dmaven.repo.local=/tmp/repo,查看构建是否成功。注意:-s 参数后为拥有权限拉取私服包的账号(参考仓库成员权限)登录云效私服下载的 settings.xml 的文件路径。 -
对于 Maven 仓库,为了确保本地 settings.xml 配置正确,请在本地运行 mvn help:effective-settings ,通过日志查看私库地址是否已经配置进去。
用户自有私有仓库迁移到或者同步到新版云效的 Maven 私有仓库
-
可以在云效私有仓库中直接配置代理,这样从云效私有仓库下载时,如果云效私有仓库不存在这个包,会去代理仓库中拉取并同时存储到云效,详见:仓库设置。
-
如果是要将自己的私有仓库全部迁移到云效私有仓库的话,可以使用下载迁移工具 migrate-local-repo-tool.jar 迁移,如果数据太多的话建议分批迁移,详见:将已有 Maven 私库迁移至云效。
制品库下载包速度很慢
查看制品仓库的代理设置,检查其中是否涉及跨境的代理仓库,对于跨境的速度无法保证。
上传 maven 仓库报错:Could not PUT 'https://packages.aliyun.com/maven/repository/xxxx/xxx.jar'. Received status code 400 from server
请检查制品仓库是否支持 Release 和 Snapshot 包,注意:Release 库只能上传 Release 包、Snapshot 库只能上传 Snapshot 包(即版本以 -SNAPSHOT 结尾的包)。
Maven 私有仓库推送到云效报错403
报错内容:INFO LoggingTransferListener - Could not transfer artifact2 from/to repositoryIdentifier (https://packages.aliyun.com/xxxx/): (403),请检查私有仓库 case 是否有权限推送。
推送包到制品仓库报错组织制品存储总容量已用尽
报错内容:400 Bad Request。当前组织制品存储总容量已用尽,无法上传新的制品。建议您开通按量计费获取更多容量。
制品仓库推送制品包报错提示400
首先建议您查看制品存储资源用量是否空间不足,如果是建议您开通按量计费或者清理制品以释放更多空间。
[INFO] ------------------------------------------------------------------------
[WARNING]
[WARNING] Plugin validation issues were detected in 3 plugin(s)
[WARNING]
[WARNING] * org.apache.maven.plugins:maven-install-plugin:2.5.2
[WARNING] * org.apache.maven.plugins:maven-source-plugin:2.2.1
[WARNING] * org.apache.maven.plugins:maven-deploy-plugin:2.8.2
[WARNING]
[WARNING] For more or less details, use 'maven.plugin.validation' property with one of the values (case insensitive): [BRIEF, DEFAULT, VERBOSE]
[WARNING]
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy (default-deploy) on project jeecg-boot-starter: Failed to deploy artifacts: Could not transfer artifact com.bdcs:jeecg-boot-starter:pom:1.0.0 from/to rdc-releases (https://packages.aliyun.com/maven/repository/2287973-release-n8XD5i/): status code: 400, reason phrase: (400) -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException
能否将 A 制品库的数据迁移到 B 制品库
-
暂不支持云效制品仓库之间的迁移,且为了防止可能出现的循环代理问题,目前也暂不支持代理到云效制品仓库。
-
对于 Maven 制品库,建议把多个源配置到同一个 settings.xml 里面。
如何通过NPM拉取云效制品仓库的制品
参考云效-制品仓库控制台NPM仓库的完成配置。
.npmrc文件样例配置:
registry=https://packages.aliyun.com/64c1************17/npm/repo-***/
//packages.aliyun.com/64c1************17/npm/repo-***/:_authToken=*************
注意事项:
-
若配置后仍无法拉取,请检查以下路径是否存在
.npmrc文件:-
用户级配置:
~/.npmrc -
项目级配置:项目根目录下的
.npmrc
-
-
项目级配置优先级高于用户级配置,若两者冲突,以项目中的配置为准。
-
确保
_authToken值正确且未过期。
如何通过Yarn命令拉取云效制品仓库的制品
Yarn 的配置方式因版本不同而异,请先确认当前使用的 Yarn 版本:
yarn -v
YARN 1.x 版本
YARN 1.x兼容NPM的.npmrc配置文件。
配置步骤:
-
参考云效-制品仓库控制台NPM仓库的完成配置。
-
若执行
npm config set always-auth true遇到always-auth is not a valid npm option报错,可手动编辑.npmrc文件中手动添加always-auth=true。
.npmrc文件内容如下:
registry=https://packages.aliyun.com/64c1************17/npm/repo-***/
//packages.aliyun.com/64c1************17/npm/repo-***/:_authToken=*************
always-auth=true
YARN 2+ 版本
使用.yarnrc.yml文件代替.npmrc文件,需配置的.yarnrc.yml文件内容如下:
npmRegistries:
"https://packages.aliyun.com/64c1************17/npm/repo-***/":
npmAuthToken: *************
如何快速检查云效Package Maven仓库依赖是否可以拉取
在拉取云效Package Maven仓库依赖遇到403、404等问题时,可以通过curl、wget命令直接拉取。例如:
-
拉取
release包的pom文件命令:curl -iv -H "Host:packages.aliyun.com" -H "Authorization: Basic $(echo -n '$username:$password' | base64)" https://packages.aliyun.com/64c1c7**************3417/maven/repo-u***k/com/rdcpackage/packagetest/2.0/packagetest-2.0.pom -
拉取
SNAPSHOT包的maven-metadata.xml命令:curl -iv -H "Host:packages.aliyun.com" -H "Authorization: Basic $(echo -n '$username:$password' | base64)" https://packages.aliyun.com/64c1c7**************3417/maven/repo-u***k/org/example/flow/1.0-SNAPSHOT/maven-metadata.xmlupload_test % curl -H "Host:packages.aliyun.com" -H "Authorization: Basic $(echo -n 17/maven/repo-2xxx/org/example/flow/1.0-SNAPSHOT/maven-metadata.xml | base64)" https://packages.aliyun.com/64c1c <?xml version="1.0" encoding="UTF-8"?> <metadata modelVersion="1.1.0"> <groupId>org.example</groupId> <artifactId>flow</artifactId> <version>1.0-SNAPSHOT</version> <versioning> <snapshot> <timestamp>20250319.084907</timestamp> <buildNumber>1</buildNumber> </snapshot> <lastUpdated>20250319084907</lastUpdated> <snapshotVersions> <snapshotVersion> <extension>jar</extension> <value>1.0-20250319.084907-1</value> <updated>20250319084907</updated> </snapshotVersion> <snapshotVersion> <extension>pom</extension> <value>1.0-20250319.084907-1</value> <updated>20250319084907</updated> </snapshotVersion> <snapshotVersion> <classifier>jar-with-dependencies</classifier> <extension>jar</extension> <value>1.0-20250319.084907-1</value> <updated>20250319084907</updated> </snapshotVersion> </snapshotVersions> </versioning> </metadata> -
拉取实际依赖的
jar包可以通过wget命令:wget --header="Authorization: Bearer $(echo -n '$username:$password' | base64)" https://packages.aliyun.com/64c1c7**************3417/maven/repo-u***k/com/rdcpackage/packagetest/2.0/packagetest-2.0.jarupload_test % wget --header="Authorization: Bearer $(echo -n 'xxx' | base64)" https://packages.aliyun.com/64cxxx/maven/repo-uxxx:com/rdcpackage/packagetest/2.0/packagetest-2.0.jar Will not apply HSTS. The HSTS database must be a regular and non-world-writable file. ERROR: could not open HSTS store at '/Users/fangpeng/.wget-hsts'. HSTS will be disabled. --2025-10-23 17:36:24-- https://packages.aliyun.com/64c1c73fa4a9f6530c595e17/maven/repo-uuglk/com/rdcpackage/packagetest/2.0/packagetest-2.0.jar 正在解析主机 packages.aliyun.com (packages.aliyun.com)... 39.105.151.219, 123.57.30.242 正在连接 packages.aliyun.com (packages.aliyun.com)|39.105.151.219|:443... 已连接。 已发出 HTTP 请求,正在等待回应... 200 长度:2503 (2.4K) [application/octet-stream] 正在保存至: "packagetest-2.0.jar" packagetest-2.0.jar 100%[============================================>] 2.44K --.-KB/s 用时 0s 2025-10-23 17:36:25 (15.9 MB/s) - 已保存 "packagetest-2.0.jar" [2503/2503])