Nexus 搭建Maven私服(Linux)

1 篇文章 0 订阅
1 篇文章 0 订阅

1、为什么要搭建私服

  1. 节省时间:在企业开发中一个项目需要多个开发人员进行开发,必定都会下载项目所使用的依赖包,每个人都去中央仓库下载,这样就加大了不必要的浪费。
  2. 统一管理maven依赖,内部封装的构件,项目组其他人也可以使用。

2、下载Nexus

下载地址:https://help.sonatype.com/repomanager3/product-information/download/download-archives—repository-manager-3
可能会导致下载太慢,或者是下载失败 打不开页面,这里推荐使用迅雷下载

2.1 打开下载的地址,并复制要下载的版本
在这里插入图片描述

2.2 打开迅雷,使用链接下载

在这里插入图片描述
在这里插入图片描述

2.3 将安装包上传到linux,并解压(一般放在/usr/local 下)

# 解压安装包
tar -zxvf nexus-3.15.2-01-unix.tar.gz
# 这时会得到 nexus-3.15.2-01、sonatype-work 两个文件夹

# 进入并bin目录下启动nexus
cd nexus-3.15.2-01/bin/

# 启动
./nexus start

在这里插入图片描述

以上成功启动!

# 访问 默认端口是8081
http://ip:8081/
# 默认的账号:admin 密码admin123

在这里插入图片描述

修改端口,可以去 nexus-3.15.2-01/etc/nexus-default.properties 进行修改
在这里插入图片描述

停止nexus

./nexus stop

3、Nexus 仓库类型

  • hosted:本地仓库,通常用来部署自己的构件,比如公司内部的构件

    1、maven-release:用于存放release(发行)版本的jar包。

    2、maven-snapshots:用于存放snapshots(快照)版本的jar包。

  • proxy:代理仓库,用来代理远程的公共仓库,可以修改远程仓库的地址(例如使用阿里云仓库)

    1、maven-central:代理仓库。

  • group:仓库组,可用于合并多个仓库(hosted/proxy),方便开发人员设定自己的仓库,当项目中想使用多个repository时,就不需要多次引用,直接引用一个group即可

    1、maven-public:仓库组 可添加多个仓库集合,则可以访问多个repository资源。

在这里插入图片描述

3.1 设置proxy代理仓库的远程仓库的地址(使用阿里云仓库)

因nexus默认远程仓库很慢,可以改为使用阿里云仓库

阿里云仓库:http://maven.aliyun.com/nexus/content/groups/public

在这里插入图片描述

3.2 为group仓库组添加多个仓库
在这里插入图片描述

4、修改配置

4.1 上传构件到nexus

1、创建一个maven项目
2、在pom.xml 文件中加入以下内容

<distributionManagement>
    <!-- 上传到releases的仓库 -->
    <repository>
        <!--id的名字可以任意取,但在setting文件中属性<server>的id要一致-->
        <id>releases</id>
        <!-- releases仓库的url -->
        <url>http://ip:8081/repository/maven-releases/</url>
    </repository>
    <!-- 上传到snapshot的仓库 -->
    <snapshotRepository>
        <id>snapshots</id>
        <url>http://ip:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
</distributionManagement>

3、找到maven的setting.xml 配置文件,并在 servers 标签中加入登录nexus的用户名和密码

<server>
  <!--对应pom.xml repository的id-->
  <id>releases</id>
  <!-- nexus的账号密码 -->
  <username>admin</username>
  <password>admin123</password>
</server>
<server>
  <id>snapshots</id>
  <username>admin</username>
  <password>admin123</password>
</server>

4、使用maven的deploy命令进行上传
在这里插入图片描述

在这里插入图片描述

4.2 修改Maven setting文件(从私服下载依赖)
1、打开setting.xml 配置文件
2、在 mirrors 属性中加入以下内容

<mirror>  
 <id>nexus-private</id>  
 <mirrorOf>central</mirrorOf>  
 <name>Nexus Private</name>  
 <!-- 更换自己服务器的ip,这里使用的是仓库组,这个仓库组则包含了其他三种类型的仓库 -->
 <url>http://ip:8081/repository/maven-public/</url>  
</mirror>

3、在 profiles 属性中加入以下内容

<profile>
	  <id>nexus-remote-private</id>
	   <!-- 远程仓库列表 -->
	  <repositories>
		<repository>
		  <id>central</id>
		  <name>Nexus Private</name>
		 <!-- 会被镜像拦截 替换成镜像的URL-->
		  <url>http://ip:8081/repository/maven-public/</url>
		  <layout>default</layout>
		 <!-- 表示可以从这个仓库下载releases版本的构件-->  
		  <releases>
			<enabled>true</enabled>
		  </releases>
		 <!-- 表示可以从这个仓库下载snapshot版本的构件 -->  
		  <snapshots>
			<enabled>true</enabled>
		  </snapshots>
		</repository>
	  </repositories>
	  
	   <!-- 插件仓库列表 -->
	  <pluginRepositories>
		<pluginRepository>
		  <id>central</id>
		  <name>Nexus Private</name>
		  <url>http://ip:8081/repository/maven-public/</url>
		  <layout>default</layout>
		  <snapshots>
			<enabled>true</enabled>
		  </snapshots>
		  <releases>
			 <enabled>true</enabled>
		  </releases>
		</pluginRepository>
	  </pluginRepositories>
</profile>

4、增加 activeProfiles 激活profile的配置

<activeProfiles>
    <!--需要激活 <profile>中的ID才生效-->  
    <activeProfile>nexus-remote-private</activeProfile>
</activeProfiles>

在这里插入图片描述

5、下载自己上传的构件

在这里插入图片描述

在项目的pom文件中加入上传的构件
在这里插入图片描述

成功下载私服的依赖包!

  • 0
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值