Maven私服指南
下载
下载包 nexus-2.9.0.war http://download.csdn.net/detail/wshuaichao/8305241
上传到linux操作系统目录 apps/svr/
cp nexus-2.9.0.war nexus.war
rm –f nexus-2.9.0.war
安装(Linux系统)
安装之前需要准备JDK环境
A. jdk1.7 环境变量配置
B. apache-maven-3.1.1 环境变量配置
C. apache-tomcat-7.0.61.tar.gz
tar –zxf apache-tomcat-7.0.61.tar.gz
cp apache-tomcat-7.0.61 tomcat-nexus
rm –f apache-tomcat-7.0.61
mv nexus.war /apps/svr/tomcat-nexus/webapps/
进入bin 目录 执行 sh start.sh 启动tomcat
1. 验证是否成功
http://localhost:8080/nexus/#welcome
2. 默认登录账户、密码
admin\admin123
3. 设置一个只读账号的用户名密码,用户开发者发布包
用管理员账号登录nexus系统,创建一个deployment账号
<username>deployment</username>
<password>123</password>
使用
概念:3rdparty、Snapshots、Releases.
以下是个人理解
3rd party 顾名思义是第三方jar仓库。
作用:主要是当我们的maven中央仓库没有第三方开发的jar,方便我们管理这些jar包。举个例子:oracle驱动jar ,中央仓库没有定义maven坐标,我们在 pom文件中无法使用,这时候需要我们团队内部定义一个maven坐标,我们就会定义在这个仓库。
Snapshots、Releases 是团队内部开发的jar包仓库,我们把团队自己开发的相关jar存放到此仓库中。Snapshots是开发版本,Releases 是正式发布版。
Public Repositories 是远程仓库的同步库,我们的私服在被使用的时候,会缓存远程仓库的jar放到本地,提升我们下载jar的速度。
1.1 如何上传第三方jar到私服
举例:oracle驱动jar,上传到3rd party.
1.2 如何发布团队内部开发的jar以及源码到私服
1. 配置maven本地服务参数配置:
conf/setting.xml以及默认用户下的setting.xml
maven工程配置成私服的配置参数
Pom.xml配置,如果有父子工程的pom,只需在父pom.xml配置如下参数:
<!--build -->
<build>
<plugins>
<!--编译插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<!--打包过滤test -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<!--源码插件 -->
<plugin>
<artifactId>maven-source-plugin</artifactId>
<configuration>
<attach>true</attach>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<distributionManagement>
<repository>
<id>releases</id>
<url>http://ip:端口/nexus/content/repositories/releases</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<url>http://ip:端口/nexus/content/repositories/snapshots</url>
</snapshotRepository>
</distributionManagement>
2. 用maven命令发包
进入到工程的根目录:
Mvn clean
Mvn deploy
Mvn deploy error总结:
1.1 Return code is: 401, ReasonPhrase: Unauthorized
使用mvn命令发布包需要修改如下参数
修改maven目录conf的setting.xml里,
- < server >
- < id > releases </ id >
- < username > admin </ username >
- < password > admin123 </ password >
- </ server >
- < server >
- < id > snapshots </ id >
- < username > admin </ username >
- < password > admin123 </ password >
- </ server >
</ servers >
1.2发布失败的错误:
修改pom的依赖,按照提示修改即可。
欢迎QQ咨询:928271079,有偿提供maven私服运维。