如何配置Maven2发布到Artifactory?

IAm*_*aja 16 java publish artifactory maven

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

mvn clean package
Run Code Online (Sandbox Code Playgroud)

我现在需要调整pom.xml以将此JAR(myapp.jar)发布到运行于的运行的Artifactory服务器:

http://myartifactory/artifactory/simple/myorg/myapp/0.1
Run Code Online (Sandbox Code Playgroud)

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

<repositories>
    <repository>
        <id>myartifactory</id>
        <url>http://myartifactory/artifactory/simple/</url>
    </repository>
</repositories>
Run Code Online (Sandbox Code Playgroud)

关于如何让出版工作的任何想法?为简单起见,假装此Artifactory存储库经过身份验证,以接受来自具有username=foo和的用户的发布/写入password=bar.

JBa*_*uch 29

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

将DistributionManagement零件添加到您的pom并server分配给您的settings.xml

  1. 假设您要部署到libs-snapshot-local存储库.在这种情况下,您需要转到Artifactory中的树浏览器,关注存储库级别,复制Distribution Management代码段并将其粘贴到您的pom.xml: 分销管理
  2. 接下来,您需要告诉maven凭据.为此,请单击右上角的用户名,输入密码以解锁屏幕,server从Maven Settings面板复制标签: 在此输入图像描述 这个你贴在你的settings.xml.不要忘记将$ {server-id}替换为真实的服务器ID(现在是Distribution Management中的那个).
  3. 现在,跑步mvn deploy和享受.

使用Maven Artifactory插件:

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

Artifactory Maven插件的附加功能(在常规Maven部署之上):

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

  • 请阅读[Maven生命周期](http://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html).`install`运行`package`,但不运行`clean`(它是一个不同的生命周期).如果您认为答案正确,请接受. (3认同)