持续集成篇-Maven私有库和本地库的安装与配置Sonatype Nexus + Maven

持续集成管理平台的组成与工作原理图

 

如果构建的Maven项目本地仓库没有对应的依赖包,那么就会去Nexus私服去下载, 那么如果Nexus私服也没有此依赖包,就回去远程中央仓库下载依赖, Nexus私服下载成功后再下载至本地Maven库供项目引用。 

 

 

 

1、Maven私服器Sonatype Nexus的安装与配置 

 

环境:CentOS 6.6 Final、JDK7、Sonatype Nexus、Maven IP:192.168.103.212

root 用户操作

前提:已安装 JDK7 并配置好了环境变量

1、下载最新版 Nexus(本教程使用的是:nexus-3.3.2-02-unix.tar.gz),下载地址:

http://www.sonatype.org/nexus/go/

 wget 'https://sonatype-download.global.ssl.fastly.net/nexus/3/nexus-3.3.2-02-unix.tar.gz'

2、解压
# mkdir /root/nexus
# # cd /root/nexus

tar -zxvf nexus-3.3.2-02-unix.tar.gz 

[root@localhost nexus]# ll
total 104852
drwxr-xr-x 9 root root 4096 Jun 29 14:04 nexus-3.3.2-02
-rw-r--r-- 1 root root 107356428 Jun 19 13:27 nexus-3.3.2-02-unix.tar.gz
drwxr-xr-x 3 root root 4096 Jun 29 14:04 sonatype-work

(一个 nexus 服务,一个私有库目录)

3、编辑 Nexus 的 nexus.properties 文件,配置端口和 work 目录信息(保留默认)

4、编辑 nexus 脚本, 配置 RUN_AS_USER 参数
# vi bin/nexus

#RUN_AS_USER=

改为:

RUN_AS_USER=root

5、防火墙中打开 8081 端口
# vi /etc/sysconfig/iptables
添加:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8081 -j ACCEPT 保存后重启防火墙
# service iptables restart

6、启动 nexus
# /root/nexus/nexus-3.3.2-02/bin/nexus start **************************************** WARNING - NOT RECOMMENDED TO RUN AS ROOT **************************************** Starting Nexus OSS...
Started Nexus OSS.

7、浏览器中打开:http://192.168.103.212:8081/

8、登录,默认用户名 admin,默认密码 admin123:

到此,Nexus 已安装完成,接下来是 Nexus 的配置

Nexus 配置(登录后)

1、菜单 Administration/Server 配置邮箱服务地址(如果忘记密码,可以通过该邮箱找回密 码)

给用户配置邮箱地址,方便忘记密码时找回:

用户修改密码

 

2、仓库类型

group 仓库组:Nexus 通过仓库组的概念统一管理多个仓库,这样我们在项目中直接请

 

proxy 代理仓库:代理公共的远程仓库; virtual 虚拟仓库:用于适配 Maven 1; 一般用到的仓库种类是 hosted、proxy

Hosted 仓库常用类型说明:
releases 内部的模块中 release 模块的发布仓库
snapshots 发布内部的 SNAPSHOT 模块的仓库
3rd party 第三方依赖的仓库,这个数据通常是由内部人员自行下载之后发布上去

如果构建的 Maven 项目本地仓库没有对应的依赖包,那么就会去 Nexus 私服去下载,
如果 Nexus 私服也没有此依赖包,就回去远程中央仓库下载依赖,这些中央仓库就是 proxy。 Nexus 私服下载成功后再下载至本地 Maven 库供项目引用。

3、设置 proxy 代理仓库(Apache Snapshots/Central/Codehaus Snapshots)准许远程下载, 如:

4、Maven 本地库的安装与配置 环境变量、setting.xml

5、MyEclipse 中的 Maven 配置

6、项目的构建与发布演示
修改 common-parent 中的 pom.xml 中的私有库地址

7、上传第三方包

posted @ 2017-06-29 10:18  一口毒苹果  阅读(717)  评论(0编辑  收藏  举报