java - 如何配置 Maven2 发布到 Artifactory?

标签 java maven artifactory publish

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

mvn clean package

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

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 存储库已通过身份验证以接受来自具有 username=foo 的用户的发布/写入。和 password=bar .

最佳答案

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

添加DistributionManagement部分到您的 pom 和 server属于你的 settings.xml

  1. 假设您要部署到 libs-snapshot-local 存储库。在这种情况下,您需要转到 Artifactory 中的树浏览器,关注存储库级别,复制 Distribution Management片段并将其粘贴到您的 pom.xml 中: Distribution Managment
  2. 接下来,您需要将凭据告诉 Maven。为此,请单击右上角的用户名,输入密码以解锁屏幕,复制 server来自 Maven Settings 的标签控制板: enter image description here 这个你粘贴在你的settings.xml .不要忘记将 ${server-id} 替换为真实的服务器 ID(您现在在 Distribution Management 中拥有的那个)。
  3. 现在,运行mvn deploy并享受。

使用 Maven Artifactory 插件:

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

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

  1. 允许添加custom properties到部署的文件
  2. 提供构建 Material list (buildInfo),允许 Build Integration使用任何构建服务器(甚至那些不受 JFrog 支持的服务器),甚至使用独立构建(根本没有构建服务器)。

关于java - 如何配置 Maven2 发布到 Artifactory?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24122382/

相关文章:

java - 在链表中的特定点插入

java - 如何安装软件然后从批处理文件运行java类

java - 无法为 libgdx 加载共享库 box2d

eclipse - Maven Eclipse 多模块阴影依赖

java - 使用 JFrog CLI 部署到 Artifactory 时,有什么方法可以排除某些 Maven Artifact 吗?

Maven 无法从 Artifactory Repository 下载

java - 将包/类名称列表转换为父/子数据结构

java - SAP BO CMC - CMC 上的 Information Steward 链接错误(SBOP BI 4.1 sp5 和 SBO EIM 4.2 sp3): Servlet execution threw an exception

java - Maven 没有从测试套件类中找到测试

java - Artifactory 的 Maven Auth 错误