Centos7安装和使用Maven私服Nexus

1.下载安装包

Nexus有2个版本,专业版和oss版,oss版是免费的,专业版是收费的。
https://www.sonatype.com/download-nexus-repo-oss
在这里插入图片描述

2.新建安装目录, 上传安装包到该目录

mkdir -p /opt/nexus

3.解压安装包

tar -zxvf latest-unix.tar.gz

解压生成两个文件夹nexus-3.28.1-01sonatype-work

4.启动nexus

cd /opt/nexus/nexus-3.28.1-01/bin

# ./nexus {start|stop|run|run-redirect|status|restart|force-reload}
./nexus start

5.防火墙开放端口号

firewall-cmd --zone=public --add-port=8081/tcp --permanent   # 开放8081端口
firewall-cmd --reload   # 配置立即生效
firewall-cmd --zone=public --list-ports #查看防火墙所有开放的端口

6.登录Nexus

浏览器打开:http://IP:8081 , 点击右上角的Sign in

image-20201220164231024

默认帐号:admin

查看默认密码

vi /opt/nexus/sonatype-work/nexus3/admin.password

登录成功之后,修改默认密码即可。

7.仓库介绍

image-20201220164948389

仓库介绍:

  • **maven-public:**maven-central、maven-release和maven-snapshot三个库的合集。
  • **maven-release:**用来存放release版本的jar包。
  • **maven-snapshot:**用来存放snapshot版本的jar包。

仓库类型:

  • proxy:是远程仓库的代理,当用户向这个proxy请求一个artifact,这个proxy就会先在本地查找,如果找不到的话,就会从远程仓库下载,然后返回给用户,相当于起到一个中转的作用。
  • hosted:是宿主仓库,用户可以把自己的一些构件,deploy到hosted中,也可以手工上传构件到hosted里。比如说oracle的驱动程序,ojdbc6.jar,在central repository是获取不到的,就需要手工上传到hosted里,一般用来存放公司自己的jar包;
  • group:是仓库组,在maven里没有这个概念,是nexus特有的。目的是将上述多个仓库聚合,对用户暴露统一的地址,这样用户就不需要在pom中配置多个地址,只要统一配置group的地址就可以了右边那个Repository Path可以点击进去,看到仓库中artifact列表。不过要注意浏览器缓存,当你的项目希望在多个。

8.上传jar包

image-20201220165614365

选择jar包位置,输入Group ID, Artifact ID, Version, 点击 Upload按钮

9.仓库配置阿里云源

image-20201220165918062

image-20201220170009012

镜像地址替换成阿里源: http://maven.aliyun.com/nexus/content/groups/public/

10.maven配置Nexus私服地址

找到maven的配置文件settings.xml , 在标签mirrors中加上以下内容

<mirror>
    <id>maven-nexus</id>
    <name>maven-nexus</name>
    <url>http://你的IP:8081/repository/maven-public/</url>
    <mirrorOf>central</mirrorOf>
</mirror>

11. IDEA上传项目jar包

找到maven的配置文件settings.xml , 在标签servers中加上以下内容

<server>
	<id>releases</id>
	<username>admin</username>
	<password>admin123</password>
</server>
	
<server>
	<id>snapshots</id>
	<username>admin</username>
	<password>admin123</password>
</server>

在项目的pom.xml文件中新增以下内容

<distributionManagement>
	<repository>
		<id>releases</id>
		<name>releases</name>
		<url>http://你的IP:8081/repository/maven-releases/</url>
	</repository>
	<snapshotRepository>
		<id>snapshots</id>
		<name>snapshots</name>
		<url>http://你的IP:8081/repository/maven-snapshots/</url>
	</snapshotRepository>
</distributionManagement>

就可以在你想要上传的模块点击IDEA mavendeploy命令,上传jar到Nexus私服了。

jar包上传到releases还是snapshots仓库,取决于你jar包项目中的pom.xml中的版本号。

<version>1.0.0.RELEASE</version>  # 会自动上传到releases仓库
<version>1.0.0.SNAPSHOTS</version> # 会自动上传到snapshots仓库
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值