使用Nexus2搭建企业maven仓库(三)
来源:互联网 发布:国家四大人工智能平台 编辑:程序博客网 时间:2024/06/04 18:17
如果我所在的项目没有使用maven,我应该作出一个选择,要不换一个项目,要不促使这个项目使用起maven。有人会问,为什么要用maven?不用maven不也很好的运作吗。这里,只说两点我体会最深的:第一点是管理jar包。这个包含很多含义,比如下载jar包,通过仓库,你只需要输入包名和版本号,立即就可以下载到你本机,而不需要到官网或google上找,如果下载速度慢,随时可以更改仓库地址。另外,项目中jar版本混乱也是常见的,有些隐藏的问题就是由于jar版本引起,并且很难发现。还有,一个项目中n多jar包,但谁也说不清他们之间的依赖关系,maven可以,等等。第二点是可以让你的技术习惯没这么脱节。
前两篇文章分别说了如何下载、安装和启动maven,以及一些注意事项和报错处理,这篇主要说配置。
打开nexus控制台:
这2.5.1版本的界面,其实maven1和maven2的界面都大同小异,maven2增加了一些选项而已。
选择From POM,上传pom文件(我的包已通过mvn archetype:create -DgroupId=com.ainfo.bs -DartifactId=acctmanm -DpackageName=com.kage -Dversion=1.0创建,所以有pom文件,如果没有,填GAV参数也可)。然后上传jar包,上传后记得点击add再upload,我有几个包就是忘记了,搞得后面查了很久。如果忘了,是可以补传的,补传的时候它认为是update,update需要确保deployment policy选项是allow redeploy。
上传完后,主机上应该就可以看到这些文件了:
通过更新index(有时候不更新也可以),可以看到新的包:
接着,修改maven的配置文件setting.xml,指向这台nexus主机:
<server><id>nexus-releases</id><username>admin</username><password>admin123</password></server><server><id>nexus-snapshots</id><username>admin</username><password>admin123</password></server></servers><profile><id>dev</id><repositories><repository><id>local-nexus</id><url>http://30.51.23.250:8081/nexus/content/groups/public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository></repositories><pluginRepositories><pluginRepository><id>local-nexus</id><url>http://30.51.23.250:8081/nexus/content/groups/public/</url><releases><enabled>true</enabled></releases><snapshots><enabled>true</enabled></snapshots></pluginRepository></pluginRepositories></profile><activeProfiles><activeProfile>dev</activeProfile></activeProfiles>
也可以修改pom.xml,由于我希望我的项目在svn上被团队成员(流动性大)下载就自动指向这台主机,所以我需要配置在pom.xml中。
最后,还有最重要的一步(很网上文章都没提及),就是修改MyEclipse中配置(默认的路径,根本就不存在setting文件):
修改为真正所在的路径:
然后update project就会更新了:
更新后,你本机的maven仓库会下载这个包。如果出现没有下载jar包,只有一个update文件,比如 tapestry-3.0.4.pom.lastUpdated ,那有几种原因,
1、你配置的仓库地址不对,检查你的setting.xml(如果你配置在pom。xml就检查pom.xml)
2、你上传的jar不对,到nexus主机检查jar是否真的上传了
3、你上传了jar,但是没有update index,按照我前面说的update一下
4、你刚刚已经更新过了,所以不会自动更新,这种情况到你的本地仓库把这个包的文件夹删掉即可(或者只删lastupdated应该也行)
下载自己上传的jar没问题,下载其他的呢?也可以测试一下。
比如下载jfree这个jar,在pom里配置好,就会自动下载:
到nexus机器上看下载前与下载后:
其实控制台全部的库都在主机上,MyHostedRepo是我自己建的,其余默认就有。像setting里配置的就是图中的public:
版本:nexus2.5.1(tgz版) maven3.2.3
2014.11.6
- 使用Nexus2搭建企业maven仓库(三)
- nexus2安装maven仓库
- 使用Nexus搭建企业maven仓库(一)
- 使用Nexus搭建企业maven仓库(二)
- nexus2.x搭建maven私服教程(windows环境)
- 使用Nexus2.x为Maven3.x搭建私服构件仓库
- 使用Nexus2.x为Maven3.x搭建私服构件仓库-----学习笔记
- Maven 仓库使用与私有仓库搭建
- 使用Nexus搭建Maven仓库
- maven 仓库搭建及使用
- 使用Nexus2.x为Maven3.x搭建私服构件仓库 转http://gao-xianglong.iteye.com/blog/1735536
- 使用nexus搭建maven仓库(本地私服)
- maven学习(三)--仓库
- Maven学习(三) -- 仓库
- 使用Nexus搭建Maven代理仓库
- 使用Nexus搭建Maven代理仓库
- 使用Nexus搭建Maven代理仓库
- 使用Nexus搭建Maven代理仓库
- 对一篇文章计数输出最多的20个(《编程珠玑》)
- Suse Linux Enterprise 12下编译protocol buffer并生成python binding
- poj解题报告——1218
- hdu 2147 kiki's game 博弈
- 50.字符典 (15分)
- 使用Nexus2搭建企业maven仓库(三)
- 从淘宝架构之”Tair“ 看互联网方向!
- 2014年11月4日
- 调用函数输出星号图
- 得到格式化时间
- jQuery验证控件jquery.validate.js使用说明+中文API
- C++菜鸟学习笔记1
- mysql 插入出现乱码-解决办法 set names utf8
- Swift基本数据类型