如何使用Jenkins和maven部署到archiva

如何使用Jenkins和maven部署到archiva,maven,deployment,jenkins,archiva,Maven,Deployment,Jenkins,Archiva,我正在尝试使用Jenkins和maven部署到我的archiva repo。我正在使用post-build-actions选项:将工件部署到maven存储库,并添加了配置插件,在其中添加了settings.xml并定义了服务器详细信息id、用户名和密码。我还将此文件添加到构建环境设置中,并将其作为配置文件提供 我遇到的问题是错误:未授权,原因短语:未授权 用户名和密码适用于具有archiva文档指示的角色存储库管理器的用户。我也按照文档中的说明设置了pom.xml 我注意到第一个错误是: 错误:

我正在尝试使用Jenkins和maven部署到我的archiva repo。我正在使用post-build-actions选项:将工件部署到maven存储库,并添加了配置插件,在其中添加了settings.xml并定义了服务器详细信息id、用户名和密码。我还将此文件添加到构建环境设置中,并将其作为配置文件提供

我遇到的问题是错误:未授权,原因短语:未授权

用户名和密码适用于具有archiva文档指示的角色存储库管理器的用户。我也按照文档中的说明设置了pom.xml

我注意到第一个错误是: 错误:检索远程元数据失败someGroupId:SomeArtFactid:someVersion SNAPSHOT/maven-metadata.xml 我不明白错误是从哪里来的以及如何解决它。请帮助。

一些建议:

一,。确保Maven settings.xml中列出了所有服务器。这有时会让我生气

二,。确保快照repo id与Archiva中定义的repo id匹配

三,。确保您有权访问快照回购,即使是管理员。权限可以被撤销

四,。确保您拥有正确的密码

五,。我已经重新启动了Archiva,以前解决过这个问题

六,。以下settings.xml config将允许您将快照部署到属于存储库组的自定义快照repo,即特定团队的快照repo:

<mirror>
    <id><repo_group_id></id>
    <mirrorOf>*, !<team_snapshot_repo_id></mirrorOf>
    <name>My Team's Maven Repository</name>
    <url>http://<HOST>:<PORT>/archiva/repository/<repo_group_id>/</url>
</mirror>
七,。如果我想将工件部署到我的快照Maven repo中,下面是我添加到pom.xml中的内容:

<distributionManagement>
    <repository>
        <id>internal</id>
        <url>http://HOST:PORT/archiva/repository/internal/</url>
    </repository>
    <snapshotRepository>
        <id>snapshots</id>
        <name>Archiva Managed Snapshot Repository</name>
        <url>http://HOST:PORT/archiva/repository/snapshots/</url>
        <layout>default</layout>
    </snapshotRepository>
</distributionManagement>

<repositories>
    <repository>
        <id>snapshots</id>
        <url>http://HOST:PORT/archiva/repository/snapshots/</url>
        <releases>
            <enabled>false</enabled>
        </releases>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
    </repository>
</repositories>