备注:linux服务器 Centos7 ,且已经部署好JDK8环境
cd /usr/local && mkdir nexus && cd nexus
wget http://sonatype-download.global.ssl.fastly.net/nexus/3/nexus-3.6.0-02-unix.tar.gz
tar -zxvf nexus-3.6.0-02-unix.tar.gz //解压mv nexus-3.6.0-02 nexus //重命名
如果Linux硬件配置比较低的话,建议修改为合适的大小,否则会出现运行崩溃的现象
vim nexus/bin/nexus.vmoptions //虚拟机选项配置文件、
启动 Nexus(默认端口是8081),Nexus 常用的一些命令包括:
/usr/local/nexus/nexus/bin/nexus {start|stop|run|run-redirect|status|restart|force-reload}
下面我们启动Nexus,启动命令:
bin/nexus start
说明已经安装启动成功,上面报错意思是nexus建议不要用root用户来启动nexus,但并不影响启动,如果要去除这个可以百度。
1)Nexus默认的端口是8081,可以在etc/nexus-default.properties配置中修改。
2)Nexus默认的用户名密码是admin/admin123
3)当遇到奇怪问题时,重启nexus,启动时间会比较慢 要1分钟左右后才能访问。
4)Nexus的工作目录是sonatype-work(路径一般在nexus同级目录下)
当访问:http://ip:8081/ 会有nexus界面
用户登陆,进入Repositories页面点击Nexus“Log in”,输入默认用户名(admin)和默认密码(admin123)登录。后找到Repositories
默认仓库介绍:
1)maven-central: maven中央库,默认从https://repo1.maven.org/maven2/拉取jar
2)maven-releases: 私库发行版jar
3)maven-snapshots:私库快照(调试版本)jar
4)maven-public: 仓库分组,把上面三个仓库组合在一起对外提供服务,在本地maven基础配置settings.xml中使用。
Nexus默认的仓库类型有以下四种:
(上面的名字可以随便取,关键是它对应的是什么仓库类型)
1)group(仓库组类型):又叫组仓库,用于方便开发人员自己设定的仓库;
2)hosted(宿主类型):内部项目的发布仓库(内部开发人员,发布上去存放的仓库);
3)proxy(代理类型): 从远程中央仓库中寻找数据的仓库(可以点击对应的仓库的Configuration页签下Remote Storage Location属性的值即被代理的远程仓库的路径);
4)virtual(虚拟类型):虚拟仓库(这个基本用不到,重点关注上面三个仓库的使用);
Policy(策略):表示该仓库为发布(Release)版本仓库还是快照(Snapshot)版本仓库;
1)Maven可直接从宿主仓库下载构件,也可以从代理仓库下载构件,而代理仓库间接的从远程仓库下载并缓存构件
2)为了方便,Maven可以从仓库组下载构件,而仓库组并没有时间的内容(下图中用虚线表示,它会转向包含的宿主仓库或者代理仓库获得实际构件的内容).
三、创建新用户和新仓库
登陆admin后,可以点击上面的“设置”图标,在“设置”里可以添加用户、角色,对接LDAP等的设置,如下:
创建用户好后,重新登陆创建的用户
上面对仓库的概率清楚后,我们开始创建新仓库,主要创建3个仓库
proxy仓库 作用是去远程拉取jar包
hosted仓库 作用是存放本地上传的三方jar包
group仓库 作用是将上面来个放到这个组里,进行统一管理
(1)proxy 代理仓库创建
中央仓库的代理默认为https://repo1.maven.org/maven2/ 我们可以更换成阿里云中央仓库。
(2)hosted 仓库创建
host仓库这里了两种不同的存储类型
(3)group仓库
主要就是把上面三个仓库放到该组里,然后让这个组给外面访问。
最后看一下所有配置都完成之后的截图
有关在linux服务器上搭建nexus的工作已经完成,接下来就需要配置maven相关配置文件,来测试该仓库的是否成功。