maven 管理

Maven学习笔记2——向repository上传artifact
www.360doc.com/content/08/0418/18/7147_1199079.shtml 1/2
使用Maven的一大难题,就是dependency和repository的管理,而由于官网的不堪忍受性,我们不得不使用local repository或者自建私服,在这种情况下,我们该怎么样处理第三方的依赖包呢?
1. 如果是本地的repository, 可以通过如下的脚本来安装:
mvninstall:install-file -Dfile=path-to-your-artifact-jar-DgroupId=your.groupId
-DartifactId=your-artifactId -Dversion=your-version-Dpackaging=jar-DgeneratePom=true
2.如果是自建的私服,并且是第三方jar的话,就要通过webdav插件来上传,Maven2.0.5宣称它已经supportnativelywebdavprotocol
touploadartefacts,并且声称通过如下的命令行脚本就可以完成deploy的工作:
(参见http://docs.codehaus.org/display/MAVENUSER/Upload+artifacts)
mvndeploy:deploy-file-DrepositoryId=your-repository-id-Durl=dav:your-repository-url
-DgroupId=your.groupId -DartifactId=your-artifactId-Dversion=your-version-Dpackaging=jar
-Dfile=jar-name
可以我们两个人花了半天的时间,才发现这些声明纯属扯淡!存在的问题如下:
1)当前的Maven版本根本就没有对Webdav提供native的支持,
2)我们仍然需要手工创建一个pom.xml,把它和jar包放在同一个目录下,
3)在pom.xml里面,我们还要指定webdav的扩展,同时,pom文件中还需要指定artifactId,groupId和version,
4)pom文件的名字必须是pom.xml!错了就无法找到该文件!
下面是一个完整的pom.xml和命令行脚本:
1. <?xmlversion="1.0"encoding="UTF-8"?>
2. <projectxmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/maven-v4_0_0.xsd"
3. <modelVersion>4.0.0</modelVersion>
4.
5. <groupId>org.eclipse.swt</groupId>
6. <artifactId>win32</artifactId>
7. <version>3.2.0</version>
8.
9.
10. <build>
11. <extensions>
12. <extension>
13. <groupId>org.apache.maven.wagon</groupId>
14. <artifactId>wagon-webdav</artifactId>
15. <version>1.0-beta-1</version>
16. </extension>
17. </extensions>
18. </build>
19. </project>13-10-28 Maven学习笔记2——向repository上传artifact
www.360doc.com/content/08/0418/18/7147_1199079.shtml 2/2
命令行:
mvndeploy:deploy-file-Dfile=win32.jar-Durl=dav:http://localhost:8080/repository-DpomFile=pom.xml
如果是把项目的artifact往私服上上传,就要方便的多了,首先在pom中指定wagon-webdav的扩展,如上所示。然后加入distributionManagement:
1. <distributionManagement>
2. <repository>
3. <id>YOUR_REPOSITORY_FOR_RELEASES_ID</id>
4. <name>CentralRepository</name>
5. <url>dav:YOUR_REPOSITORY_FOR_RELEASES_URL</url>
6. </repository>
7. <snapshotRepository>
8. <id>YOUR_REPOSITORY_FOR_SNAPSHOTS_ID</id>
9. <name>CentralDevelopmentRepository</name>
10. <url>dav:YOUR_REPOSITORY_FOR_SNAPSHOTS_URL</url>
11. </snapshotRepository>
12. </distributionManagement>
之后就可以运行mvndeploy了
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值