maven发布管理在pom之外

时间:2011-11-02 16:18:04

标签: maven snapshot

无论如何,我可以将分发管理部分移到pom之外 我不喜欢我的pom.xml包含服务器位置的想法, 是否可以将此名称或服务器名称移动到settings.xml? 感谢

<distributionManagement>
    <repository>
        <id>archiva</id>
        <name>archiva Repo</name>
        <url>http://ca.server:8080/archiva/repository/snapshots/</url>
    </repository>
    <snapshotRepository>
        <uniqueVersion>false</uniqueVersion>
        <id>archiva</id>
        <name>archiva Repo</name>
        <url>http://ca.server:8080/archiva/repository/snapshots/</url>
    </snapshotRepository>
</distributionManagement>

2 个答案:

答案 0 :(得分:3)

最好的想法是将这些信息放入父POM(公司pom)并使用它来代替settings.xml,因为任何想要构建的机构都需要更改settings.xml。

答案 1 :(得分:1)

简短回答:是的,你可以。

更长的答案:我也喜欢这个想法,因为我可以想象应用程序将在不同的服务器上构建和分发。所以我喜欢以下内容:

  • 在POM中定义与其他库和插件的依赖关系。
  • 在您的Maven安装配置中定义(因此它取决于安装,而不是使用该安装的用户)您在问题中草拟的内容。
  • 通常,您需要一个用户ID和密码才能在Maven存储库中分发,这是(仅)的内容:

    <settings>
      <servers>
        <server>
          <id>archiva</id>
            <username>XXadmin-user-nameXX</username>
            <password>XXadmin-passwordXX</password>
        </server>
      </servers>
    </settings>
    

这应该只在构建管理器配置的构建服务器上,并且每个人都不知道。您唯一需要确保的是两个文件中的ID都相同。

相关问题