本文共 3769 字,大约阅读时间需要 12 分钟。
环境搭建
1、linux安装maven
wget
tar zxvf apache-maven-3.0.5-bin.tar.gz
mv apache-maven-3.0.5 /usr/local/apache-maven-3.0.5
vi /etc/profile
增加:
export MAVEN_HOME=/usr/local/apache-maven-3.0.5 export PATH=$PATH:$MAVEN_HOME/bin
source /etc/profile
mvn -v
2、linux安装nexus
需要的安装包:nexus-2.11.4-01-bundle.tar(csdn下载地址:http://download.csdn.net/detail/carboncomputer/9595216)
需要jdk版本1.7以上
tar zxvf nexus-2.11.4-01-bundle.tar
端口配置文件,可修改端口:/nexus-2.11.4-01/conf/nexus.properties
cd nexus-2.11.4-01/bin
./nexus start
本地机器访问:
如果启动成功,就会显示如下:
如果在启动过程中说要求root权限的。可以百度解决,或者用sudo sh nexus start启动。
用默认的账号密码登录:admin/admin123
环境就部署好了,现在是使用maven仓库。
注意:严重不提倡使用nexus3.0以上的版本,一开始用这个,安装时很多问题需要解决,此外,新的界面很难使用。官网上也是推荐使用maven时采用nexus2.X版本。
maven仓库使用及版本发布管理
点击仓库列表
主要是两个类型:
snapshots:开发过程中的版本仓库
release:正式发布的版本仓库
public:maven主库
3rd party:专门存放第三方的jar,
主要是介绍如何使用nexus来管理版本和本地开发过程。
上传第三方的jar如下:
snapshots、release全部开发允许部署的权限,如下
一、现在来看看setting.xml文件里面的配置
dev nexus http://127.0.0.1:8081/nexus/content/groups/public/ true true nexus http://127.0.0.1:8081/nexus/content/groups/public true true dev
二、第二种pom.xml的内容设置如下:
… … nexus-releases Nexus Release Repository http://127.0.0.1:8081/nexus/content/repositories/releases/ nexus-snapshots Nexus Snapshot Repository http://127.0.0.1:8081/nexus/content/repositories/snapshots/
这里配置,让Maven知道当我要发布release版本或者snapshot版本是需要发布到哪个地址.
然后我们需要在setting.xml里面配置一下Nexus的帐号和密码:
… … nexus-releases admin admin123 nexus-snapshots admin admin123
以上配置好以后,idea里面打包时只需要双击maven里面的deploy按钮就行
关于发布releases版本与snapshots版本的问题,maven会根据模块的版本号(pom文件中的version)中是否带有-SNAPSHOT来判断是快照版本还是正式版本。如果是快照版本,那么在mvn deploy时会自动发布到快照版本库中,如果版本号中没有带SNAPSHOT,deploy时就会发布正式版本。
打开nexus后台查看正式版本:
而使用快照版本的模块:
在不更改版本号的情况下,直接编译打包时,maven会自动从镜像服务器上下载最新的快照版本。 而使用正式版本的模块,: 在不更改版本号的情况下,编译打包时如果本地已经存在该版本的模块则不会主动去镜像服务器上下载。所以,我们在开发阶段,可以将公用库的版本设置为快照版本,而被依赖组件则引用快照版本进行开发,在公用库的快照版本更新后,我们也不需要修改pom文件提示版本号来下载新的版本,直接mvn执行相关编译、打包命令即可重新下载最新的快照库了,从而也方便了我们进行开发。
注意:
1、在pom文件中的配置仅对当前项目有效,但若需在其他项目中使用,为避免代码重复性,减少冗余,可在settings.xml文件中配置
转载地址:http://ocfsi.baihongyu.com/