繁体   English   中英

Maven自动在Archiva上部署工件?

[英]maven automatically deploy artifacts on Archiva?

也许这个问题被问了一百多次,但是我没有通过搜索功能找到它。

好的,我们有一个运行Jenkins和Archiva的CI服务器。 用Maven构建代码。 但是现在我们的IT部门更改了CI服务器的代理配置。 它无法上网。

当我使用新的工件并在本地构建时,mvn会下载该工件并将其存储在本地存储库中。

但是,当我在SVN中提交源代码时,Jenkins失败了,这是由于缺少Internet连接造成的。

那么,当我使用maven在本地构建项目时,是否有一种方法可以自动将工件和maven插件部署到Archiva?

使用将部署到Archiva的mvn clean deploy。 您必须在pom中正确配置distributionManagement部分。 参见http://archiva.apache.org/docs/1.4-M4/userguide/deploy.html

我创建了一个Jenkins作业,该作业将执行Shell脚本,要求Maven在Archiva中部署我们的私有工件。

先决条件

在.m2 / settings.xml文件中,添加服务器,即

<server>
    <id>archiva.release</id>
    <username>admin</username>
    <password>123456</password>
</server>

将第3方工件部署到Archiva存储库Shell脚本

            #!/bin/bash

            rm_host=localhost       # archiva server address
            rm_port=8080            # archiva port
            major_version=1     #
            minor_version=0     #
            version_build=1     #
            repository=private      # your repository id in archiva

            mvn deploy:deploy-file
                -Dfile=myApp.jar
                -DgroupId=com.company
                -DartifactId=myApp
                -Dversion=${major_version}.${minor_version}.${version_build}
                -Dpackaging=jar
                -Durl=http://${rm_host}:${rm_port}/repository/${repository}/ -DrepositoryId=archiva.release

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM