Sonatype Nexus搭建Maven私服

1. 概述

私服就是企业搭建供内部使用的一个Maven仓库,实现企业内部依赖的共享,具有降低中央仓库负荷、节省外网宽带和提高项目稳定性等优点。实际开发中服务器不能访问公网,可以通过一台能访问外网的服务器作为代理服务器下载需要的依赖。Nexus是Sonatype公司发布的一款仓库管理软件,常用于搭建Maven私服。更多详情,可以访问官网
nexus官网

2. 环境要求

Nexus依赖于Java8,所以需要提前搭建好Java环境,CPU数最低为4
CPU要求
内存最低要求8GB
内存要求

3. 安装Nexus

3.1. 下载安装包

官网下载最新安装包
下载安装包
选择适合的版本,点击下载链接即可,注意下载速度很慢,可以通过专门下载工具进行快速下载

3.2. 解压

将下载的安装压缩包解压到指定目录,如果是Linux服务器安装,需要先将压缩包上传到服务器目录再解压,解压后目录如下:
解压后目录
nexus-3.38.1-01:包含Nexus运行所需的文件以及所有必需的其他组件,如启动脚本、依赖jar包等
sonatype-work:包含由Nexus存储和管理的仓库、组件和其他数据

3.3. 启动Nexus

进入nexus-3.38.1-01/bin目录下,执行./nexus start命令启动Nexus
启动Nexus
执行./nexus status可以查看启动状态
启动状态
使用netstat -anp | grep java命令查看端口占用情况,可以看到8081端口
在Windows环境中,在bin目录下执行nexus /run启动Nexus
启动nexus

3.4. 访问Nexus首页

浏览器地址输入http://ip:8081,初始化界面如下
初始化界面
初始化完成后,进入首页
首页

3.5. 初始设置

点击右上角Sign in
登陆
输入用户名/密码,默认用户名是admin,默认密码如提示的/sonatype-work/nexus3/admin.password
setup
直接点击Next,进入下一步
修改密码
输入新密码,点击Next,进入下一步
禁用匿名访问
勾选禁用匿名访问选项,点击Next,进入下一步
Finish
点击Finish即可
登陆后的界面如下
登陆后首页

4. Maven项目接入Nexus

4.1. 通过Nexus下载jar包

maven库
仓库类型说明
proxy:某个远程仓库代理
group:存放通过Nexus获取的第三方jar包
hosted:存放本团队开发人员部署到Nexus的jar包
仓库名称说明
maven-central:Nexus对Maven中央仓库代理
maven-public:Nexus默认创建,供开发人员下载使用的组仓库
maven-releases:Nexus默认创建,供开发人员部署jar包的宿主仓库要求release版本
maven-snapshots:Nexus默认创建,供开发人员部署jar包的宿主仓库要求snapshots版本
初始状态时,以上几个仓库都没有依赖
空仓库
使用本地Maven空仓库

<localRepository>E:\Java\repository-3.8.5</localRepository>

在mirrors标签中添加Nexus库

<mirror>
	<id>nexus-mine</id>
	<mirrorOf>central</mirrorOf>
	<name>Nexus mine</name>
	<url>http://xx.xx.xx.xx:8081/repository/maven-public/</url>
</mirror>

在servers标签配置用户信息

<server>
	<id>nexus-mine</id>
	<username>admin</username>
	<password>123456</password>
</server>

注意:server标签的id标签值必须与mirror标签的id标签值一致
在maven项目中执行mvn clean compile命令,下载依赖后,Nexus服务器就有jar包
nexus仓库依赖

4.2. 将jar包部署到Nexus

在maven项目中配置如下信息

<distributionManagement>
    <snapshotRepository>
        <id>nexus-mine</id>
        <name>Nexus Snapshot</name>
        <url>http://xx.xx.xx.xx:8081/repository/maven-snapshots/</url>
    </snapshotRepository>
</distributionManagement>

snapshotRepository 的 id 标签也必须和 settings.xml 中指定的 mirror 标签的 id 属性一致
执行部署命令

mvn deploy

下载依赖
查看Nexus服务器上maven-snapshots仓库
上传依赖

4.3. 引用他人部署的jar包

在maven项目中引入如下配置

<repositories>
    <repository>
        <id>nexus-mine</id>
        <name>Nexus Snapshot</name>
        <url>http://xx.xx.xx.xx:8081/repository/maven-snapshots/</url>
        <snapshots>
            <enabled>true</enabled>
        </snapshots>
        <releases>
            <enabled>true</enabled>
        </releases>
    </repository>
</repositories>

4.4. 修改Nexus仓库配置

Nexus的远程仓库默认为中央仓库,访问较慢,可以修改为国内的阿里云仓库
修改仓库
点击进入,修改远程中央仓库配置
修改远程仓库地址

4.5. 上传jar依赖

对于不能从中央仓库获取的第三方依赖,可以直接上传到Nexus私库
上传jar到nexus
选择maven-releases仓库进入,选择需要上传的jar包
上传jar依赖

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
搭建Maven私服可以使用Sonatype Nexus,它是一个功能强大的仓库管理器,可以帮助我们创建和管理Maven私服。下面是基于Nexus搭建Maven私服的详细步骤: 1. 准备环境:首先,确保你已经安装了Java环境,并且可以正常运行MavenNexus软件。 2. 下载和解压缩Nexus软件:从Sonatype官方网站下载最新版本的Nexus软件,并解压缩到合适的目录中。 3. 启动Nexus:使用命令行窗口进入Nexus软件的目录,然后执行 `./bin/nexus start` 命令来启动Nexus服务器。 4. 访问Nexus控制台:在浏览器中输入 `http://localhost:8081` 访问Nexus控制台,默认用户名和密码都是 `admin`,登录成功后,可以看到Nexus的管理界面。 5. 创建Maven仓库:在Nexus控制台中,点击左侧菜单的 `Repositories`,然后点击 `Create repository` 来创建新的Maven仓库。根据需要选择 `Hosted repository` 或者 `Proxy repository`,然后填写相应的配置信息,如仓库名称、URL、布局等。 6. 配置Maven项目:在你的Maven项目的pom.xml文件中添加Nexus私服的配置信息,包括ID、URL等,用来指定将Maven构建输出部署到Nexus仓库中。 7. 部署和使用:使用 `mvn deploy` 命令将项目打包并部署到Nexus私服中,当其他开发人员或者CI/CD服务器需要下载依赖时,只需要修改项目的settings.xml文件,指定Nexus私服的URL和凭据即可。 8. 其他设置:你还可以在Nexus控制台里进行其他设置,比如用户管理、访问控制、仓库代理等。 总结一下,使用Nexus搭建Maven私服非常简单,只需要几个基本的步骤即可完成。通过搭建Maven私服,我们可以有效地管理和共享项目的依赖包,提升团队的开发效率和项目的可维护性。这对于生产环境中的项目非常重要。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值