Nexus私服简介及搭建(Linux3.62版本)

2023-12-28 20:47:37

一、Nexus的安装

  • linux安装java8,因为nexus的运行需要java
  • 作者把nexus安装在/usr/local/nexus目录下
  • 解压之后会出现nexus-3.62 目录和sonatype-work目录
    在这里插入图片描述

1、运行程序

  • 作者启动了3分钟,慢慢等待不用着急,没启动起来的时候端口是无法访问的
  • 进入运行目录
cd /usr/local/nexus/nexus-3.62/bin
  • 启动
./nexus start
  • 查看运行状态
./nexus status
  • 查看是否完全运行起来
curl 'localhost:8081'

2、查看运行日志和初始密码

  • 运行日志放在sonatype-work(数据目录)下
cd /usr/local/nexus/sonatype-work/nexus3/log
cat nexus.log
  • 查看初始密码
cd /usr/local/nexus/sonatype-work/nexus3
cat admin.password

3、启动配置文件的修改

cd /usr/local/nexus/nexus-3.62/etc
  • 备份配置文件
cp nexus-default.properties nexus-default.properties.bak
  • 修改配置文件
vim nexus-default.properties

二、Nexus的使用

1、Nexus使用流程说明

  • 用户直接使用的是maven-public库
  • 当maven-puclic库中找不到依赖的时候,会通过maven-central库去远程下载依赖
  • maven-releases,maven-snapshop用户存储用户上传的依赖

在这里插入图片描述

2、库类型说明

  • proxy:远程代理库
  • hosted:本地上传库
  • group:用户使用库
    在这里插入图片描述

在这里插入图片描述

2.1、maven-public库配置说明

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

2.2、maven-central库配置说明

在这里插入图片描述

3、用户本地配置使用maven-public库

  • 去maven的安装目录下,修改 conf\settings.xml 文件
  • 配置 mirror,192.168.19.130是作者服务器ip
	<!--Nexus仓库配置,id可以随便取一个,mirrorOf不能随便写-->
	<mirror>
	  <id>test</id>
	  <mirrorOf>*</mirrorOf>
	  <name>Nexus仓库配置</name>
	  <url>http://192.168.19.130:8081/repository/maven-public/</url>
	</mirror>

在这里插入图片描述

  • 阿里云镜像
	<!--阿里云镜像 -->
	<mirror>
	  <id>aliyunmaven</id>
	  <mirrorOf>*</mirrorOf>
	  <name>阿里云公共仓库</name>
	  <url>https://maven.aliyun.com/repository/public</url>
	</mirror>
  • 腾讯云镜像
	<!--腾讯云镜像 -->
	<mirror>
		<id>nexus-tencentyun</id>
		<mirrorOf>*</mirrorOf>
		<name>Nexus tencentyun</name>
		<url>http://mirrors.cloud.tencent.com/nexus/repository/maven-public/</url>
	</mirror>

3.1、禁用了匿名访问,额外需要配置

  • 在maven的settings.xml 文件中,servers 标签增加用户名和密码进行认证,这里的id需要和mirror中配置的id一样
<server>
  <id>test</id>
  <username>admin</username>
  <password>atguigu</password>
</server>

4、本地用户上传依赖

4.1、配置文件配置

  • 必须要在maven中配置账号密码,在settings.xml 文件中servers标签中配置
  • 因为上传必须要拥有权限
<server>
  <id>test</id>
  <username>admin</username>
  <password>atguigu</password>
</server>
  • pom文件中写入
    <distributionManagement>
        <repository>
            <!--注意这个id一定要填写我们maven的setting.xml当中配置的id-->
            <id>test</id>
            <url>http://192.168.19.130:8081/repository/maven-releases/</url>
        </repository>
        <snapshotRepository>
            <!--注意这个id一定要填写我们maven的setting.xml当中配置的id-->
            <id>test</id>
            <url>http://192.168.19.130:8081/repository/maven-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

4.2、上传依赖

  • 执行命令
mvn clean deploy -DskipTests

在这里插入图片描述

4.3、依赖版本判断

  • Maven 仓库分为两种,Snapshot 快照仓库和 Release 发行仓库。
  • Snapshot 快照仓库用于保存开发过程中的不稳定 SNAPSHOT 版本,Release 发行仓库则用来保存稳定的 RELEASE 版本。Maven 会根据模块的版本号(pom.xml 文件中的 version 元素)中是否带有 -SNAPSHOT 来判断是 SNAPSHOT 版本还是正式 RELEASE 版本。带有 -SNAPSHOT 是SNAPSHOT(快照)版本,不带 -SNAPSHOT 的就是正式 RELEASE(发布)版本。
  • 举例讲解
<version>1.0</version>  会被上传到maven-releases
<version>1.0-SNAPSHOT</version>  会被上传到maven-snapshots
  • 稳定版本,相同版本号只能发布一次
  • 快照版本相同版本号可以发布多次,Nexus会自动增加一层文件夹带上时间戳,取出的时候会自动选择最新的快照

5、单个jar包,自定义生成依赖

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

参考文档

文章来源:https://blog.csdn.net/m0_46085118/article/details/135263282
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。