在受限环境中重新编译第三方 Java 代码
Recompiling third party Java code in a restricted environment
我有 Jenkins 的用户级访问权限,由于访问限制,无法更改 Maven 的 settings.xml。当我想要 mvn deploy 时,它期望在 pom.xml 中有一个 distributionManagement 子句。然而,代码来自互联网,我不想每次都更改 pom.xml。我可以在詹金斯做些什么吗?我正在考虑使用 Artifactory 插件,因为这是我要部署的地方。
如果您不能使用 Maven 部署目标,Artifactory 插件似乎是一个很好的解决方案。
使用简单的 mvn clean install 命令 + Artifactory 插件,您将能够部署到您想要的位置(如果 Jenkins 服务器具有相关的 read/write 访问权限):
我建议使用 Jenkins 中的 mvn deploy,但要使用 -DaltDeploymentRepository=id::layout::url 系统指定要部署到的存储库 属性。
格式:id::layout::url
id 是用于从 settings.xml(即中央、快照)
获取凭据的存储库 ID
布局应该是 "default",除非你还在使用 Maven1(在这种情况下它应该是 "legacy")
url 是您要部署到的存储库的 URL。
这在此处的 Maven 文档中指定:https://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html
我有 Jenkins 的用户级访问权限,由于访问限制,无法更改 Maven 的 settings.xml。当我想要 mvn deploy 时,它期望在 pom.xml 中有一个 distributionManagement 子句。然而,代码来自互联网,我不想每次都更改 pom.xml。我可以在詹金斯做些什么吗?我正在考虑使用 Artifactory 插件,因为这是我要部署的地方。
如果您不能使用 Maven 部署目标,Artifactory 插件似乎是一个很好的解决方案。
使用简单的 mvn clean install 命令 + Artifactory 插件,您将能够部署到您想要的位置(如果 Jenkins 服务器具有相关的 read/write 访问权限):
我建议使用 Jenkins 中的 mvn deploy,但要使用 -DaltDeploymentRepository=id::layout::url 系统指定要部署到的存储库 属性。
格式:id::layout::url
id 是用于从 settings.xml(即中央、快照)
获取凭据的存储库 ID布局应该是 "default",除非你还在使用 Maven1(在这种情况下它应该是 "legacy")
url 是您要部署到的存储库的 URL。
这在此处的 Maven 文档中指定:https://maven.apache.org/plugins/maven-deploy-plugin/deploy-mojo.html