如何配置 Maven2 以发布到 Artifactory?

2022-09-01 15:41:16

目前我有一个Maven2项目,当你运行时,它会构建一个JAR:

mvn clean package

我现在需要调整将此JAR()发布到运行在以下位置的工件服务器:pom.xmlmyapp.jar

http://myartifactory/artifactory/simple/myorg/myapp/0.1

我尝试向我添加一个元素,但使用此配置发布任何内容:<repositories>pom.xml

<repositories>
    <repository>
        <id>myartifactory</id>
        <url>http://myartifactory/artifactory/simple/</url>
    </repository>
</repositories>

关于如何让发布工作的任何想法?为简单起见,请假设此 Artifactory 存储库已通过身份验证,以接受来自具有 and 的用户的发布/写入。username=foopassword=bar


答案 1

您有两种选择(请注意,后者是推荐的):

分发管理部分添加到 pom,将服务器部分添加到设置中.xml

  1. 假设您要部署到 libs-snapshot-local repository。在这种情况下,您需要转到 Artifactory 中的树浏览器,专注于存储库级别,复制代码段并将其粘贴到您的:Distribution Managementpom.xmlDistribution Managment
  2. 接下来,您需要告诉专家凭据。为此,请单击右上角的用户名,输入密码以解锁屏幕,从面板中复制标签:enter image description here您粘贴在.不要忘记将 ${server-id} 替换为真正的服务器 ID(您现在在分发管理中拥有的服务器 ID)。serverMaven Settingssettings.xml
  3. 现在,只需跑步并享受。mvn deploy

使用 Maven Artifactory Plugin:

  1. Wiki 中所述的相关部分添加到您的 .它包括目标存储库和凭据(请使用外部凭据源,如环境变量或系统属性)。<plugin>pom.xml
  2. 运行并享受不仅部署到 Artifactory,还运行和享受其他功能,如下所述。mvn deploy

Artifactory Maven Plugin的其他功能(在常规Maven部署之上):

  1. 允许将自定义属性添加到已部署的文件
  2. 提供构建材料清单(buildInfo),允许与任何构建服务器(甚至是JFrog不支持的构建服务器)甚至独立构建(根本没有构建服务器)进行构建集成

答案 2

推荐