一、Nexus介绍
对maven来说仓库分为两类:本地仓库和远程仓库,有三种专门的Maven仓库管理软件可以用来帮助我们建立私服:chiva、Artifactory和Nexus。Nexus是当前最流行的Maven仓库管理软件。Nexus包含了各种类型的仓库的概念,包括代理仓库、宿主仓库、仓库组等。每一种仓库都提供了丰富实用的配置参数,方便用户根据需要进行定制。
二、部署Nexus所需环境
1、Linux系统
2、JDK1.8
3、Maven
1、Linux版本Nexus下载
特别说明:由于官网是国外网站,下载速度属实慢的一批,建议还是线下下载
Nexus官网下载地址
百度云下载地址:
链接:https://pan.baidu.com/s/1sv1aFlawnqguevDntMBaOQ?pwd=69dx
提取码:69dx
2、上传压缩包至服务器并对其进行解压
具体步骤
1、进入到soft目录
cd /home/soft
2、新建nexus目录
mkdir nexus
3、进入到nexus目录
cd nexus
4、使用rz指令上传压缩包
rz
5、耐心等待上传完成后进行解压
tar -zxvf nexus-3.31.1-01-unix.tar.gz
6、解压完会有两个文件夹ll
nexus-3.31.1-01 用于实现 nexus 功能
sonatype-work 用于存储数据
3、修改Nexus端口(默认为8081)
默认端口是 8081,如果要修改,可以在 sonatype-work/nexus3/etc 目录下的 nexus.properties 配置文件,将 application-port 配置成你要的端口号即可
4、开放防火墙 或 在服务器安全组添加开放端口
打开防火墙配置文件
vim /etc/sysconfig/iptables
添加开放端口:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8090 -j ACCEPT
重启防火墙服务
service iptables restart
5、启动Nexus服务
start命令启动(后台进程形式)
./nexus start
6、浏览器访问Nexus的Web端首页,输入Linux服务器ip:8081
这样就部署好了。
三、登录并初始化Nexus控制台
1、登录,输入账号、密码:
注意:
有些 Nexus 的版本中,是有默认配置的账号(admin)、密码(admin123)的,如果登录失败的话,可以在 sonatype-work/nexus3 目录下 的 admin.password 文件中查看初始化密码。
进入 admin.password 文件所在目录
cd /usr/local/nexus/sonatype-work/nexus3
查看 admin.password 文件文本内容
cat admin.password
或
vi admin.password
或
vim admin.password
出来的一串字符就是我们登录的密码
四、了解Nexus仓库
1、仓库&类型
(1)仓库
仓库名 | 描述 |
maven-central | maven中央库,默认从https://repo1.maven.org/maven2/拉取jar |
maven-release | 私库发行版jar |
maven-snapshots | 私库快照(调试版本)jar |
maven-public | 仓库分组,把上面三个仓库组合在一起对外提供服务,在本地maven基础配置settings.xml中使用 |
(2) 类型
类型 | 描述 |
group(仓库组类型) | 用于方便开发人员自己设定的仓库 |
hosted(宿主类型) | 内部项目的发布仓库(内部开发人员,发布上去存放的仓库) |
proxy(代理类型) | 从远程中央仓库中寻找数据的仓库(可以点击对应的仓库的Configuration页签下Remote Storage Location属性的值即被代理的远程仓库的路径) |
virtual(虚拟类型) | 虚拟仓库(这个基本用不到,重点关注上面三个仓库的使用) |
2、拉取jar包流程
Maven可直接从宿主仓库下载构件,也可以从代理仓库下载构件,而代理仓库间接的从远程仓库下载并缓存构件,为了方便,Maven可以从仓库组下载构件,而仓库组并没有实际的内容(下图中用虚线表示,它会转向包含的宿主仓库或者代理仓库获得实际构件的内容)
五:创建仓库
经过上面对仓库的一些了解,接下来我们进行创建仓库,分为是 代理仓库(proxy) 、宿主仓库(hosted) 、仓库组(group) ,点击主页上面的小螺丝然后在选择 Repositories 进入仓库管理列表,然后就可以开始创建我们的仓库啦,选择仓库类型的时候一定要选择 maven2
1:proxy代理仓库
我们使用阿里的中央仓库
https://maven.aliyun.com/repository/central
其中第5步,记得点击View Certificate
完事之后直接滑到下面点击创建
2:hosted宿主仓库
这里可以创建 releases 和 snapshot 类型的仓库,这里就演示一种
第二步中可选择 Release,snapshot,mixed 我们通常使用release和snapshot.
第三步默认Allow redeploy
完事之后直接滑到下面点击创建
3:group仓库组
其中成员就是我们之前创建的仓库
六:实际操作
1:maven修改配置
(1)maven在IDEA中的位置
File->setting->Build,Execution,Deployment->Build Tools->maven
1是maven配置的位置
2:maven的地址
3:xml文件的位置
4:本地maven仓库的位置
(2)修改maven服务下的setting.xml
添加以下代码到 servers标签中 用于上传jar包
<server>
<id>releases</id><!--对应项目pom文件中设置的-->
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>snapshots</id><!--对应项目pom文件中设置的-->
<username>admin</username>
<password>admin123</password>
</server>
添加以下代码到 mirrors 标签中 用于拉取上传的 jar 包
<mirror>
<id>maven-central</id>
<mirrorOf>*</mirrorOf>
<name>my maven resp</name>
<url>http://192.168.171.5:8081/repository/me-release/</url>
</mirror>
2:jar包上传到仓库
找到需要上传.jar包的模块中的pom文件(项目全部jar包都要上传,则可以在项目最外层的pom.xml)中加入以下代码到 project 标签下
<distributionManagement>
<repository>
<id>releases</id>
<name>Nexus Release Repository</name>
<url>http://192.168.171.5:8081/repository/me-release/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<name>Nexus Snapshot Repository</name>
<url>http://192.168.171.5:8081/repository/me-snapshots/</url>
</snapshotRepository>
</distributionManagement>
打开 IDEA 的 右侧的 Maven Projects 窗口,依次点击 左上角的 reimport图标、LifeCycle 下的 deploy
1:执行构建并上传到nexus
2:显示上传成功。
3:nexus中参看jar包
七:引用jar包
在pom文件中引入:文章来源:https://www.toymoban.com/news/detail-827921.html
<dependency>
<groupId>com.iflytek.whb</groupId>
<artifactId>StudyDemo</artifactId>
<version>1.0</version>
</dependency>
八:设置开机启动nexus
1、新建服务脚本
vim /etc/init.d/nexus
2:添加内容
#!/bin/sh
#chkconfig:2345 20 90
#description:nexus
#processname:nexus
export JAVA_HOME=/home/soft/jdk
case $1 in
start) su root /home/soft/nexus/nexus-3.31.1-01/bin/nexus start ;;
stop) su root /home/soft/nexus/nexus-3.31.1-01/bin/nexus stop ;;
status) su root /home/soft/nexus/nexus-3.31.1-01/bin/nexus status ;;
restart) su root /home/soft/nexus/nexus-3.31.1-01/bin/nexus restart ;;
dump) su root /home/soft/nexus/nexus-3.31.1-01/bin/nexus dump ;;
console) su root /home/soft/nexus/nexus-3.31.1-01/bin/console ;;
*) echo "require command | start | stop | restart | status | dump " ;;
esac
3 可执行授权:
chmod +x /etc/init.d/nexus
4:加入开机启动服务
chkconfig --add nexus
5:查看启动列表,检查是否成功加入
chkconfig --list
6:启动nexus
service nexus start
参考:Linux部署Nexus私服_linux nexus搭建_陌影2272424的博客-CSDN博客文章来源地址https://www.toymoban.com/news/detail-827921.html
到了这里,关于手把手教你Linux部署Nexus3私服的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!