搭建Maven私服-Nexus

674 字
3 分钟
搭建Maven私服-Nexus

Maven 私服,可以代理远程仓库和部署自己或第三方构件。本文介绍使用最广泛搭建 Maven 私服的工具: Sonatype Nexus。

作者环境#

本次搭建私服是在局域网的一台服务器上,操作系统为 CentOS 。 需要部署到私服的项目 soul ssm 项目需要引用 soul

安装Java#

确保服务器已经安装了 java 环境,这个过程不是本文重点,安装过程自行百度。

安装Nexus#

官网 pro 版本的是需要付费的。所以我们使用免费的 OSS 版本,下载地址 (https://www.sonatype.com/download-oss-sonatype)

Terminal window
## 上传到服务器并解压
$ tar xvf nexus-3.5.1-02-unix.tar.gz

启动Nexus#

Terminal window
## 启动服务
$ cd /nexus-3.5.1-02/bin/
$ ./nexus start

验证#

打开网址:(http://192.168.0.86:8081/) , ip 为搭建私服的服务器 ip 。 用户名/密码: admin/admin123 出现一下画面,就说明安装成功了。

nexus
nexus

发布soul项目到私服#

创建仓库#

  1. 创建yelog-release仓库(名字自定义), type选择 : release
    ①.创建宿主仓库
    ①.创建宿主仓库
    ②.选择hosted类型
    ②.选择hosted类型
    ③.创建release类型仓库
    ③.创建release类型仓库
  2. 创建yelog-snapshot仓库(名字自定义), type选择 : snapshot 重复上面 ① 和 ② 步,根据下图选择类型:
    创建snapshot类型仓库
    创建snapshot类型仓库

两个都创建完成后,效果如下:

创建自定义release和snapshot仓库
创建自定义release和snapshot仓库

pom中添加部署配置#

url 复制上图中新建的仓库的 copy 按钮,复制url。

<distributionManagement>
<repository>
<id>yelog-release</id>
<name>Release Repository of yelog</name>
<url>http://192.168.0.86:8081/repository/yelog-release/</url>
</repository>
<snapshotRepository>
<id>yelog-snapshot</id>
<name>Snapshot Repository of yelog</name>
<url>http://192.168.0.86:8081/repository/yelog-snapshot/</url>
</snapshotRepository>
</distributionManagement>

在maven的 settings.xml 中配置#

这里配置 maven 的账号密码,id 要与 distributionManagement 中的id一致。默认账号/密码:admin/admin123

<servers>
<server>
<id>yelog-realease</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>yelog-snapshot</id>
<username>admin</username>
<password>admin123</password>
</server>
</servers>

执行maven命令部署项目到私服上#

我这里直接使用IDE的插件执行

部署项目到私服
部署项目到私服
部署完成后,可以在 yelog-snapshot 仓库中,查看部署的情况,如下图所示
查看部署情况
查看部署情况

从私服拉去依赖库#

上一步我们已经将项目 soul 部署到私服上了,这一步介绍项目 ssm 如何依赖引用 soul。 私服中的 maven-central 可以链接远程仓库。这样,当有依赖在私服中找不到后,就可以通过远程仓库自动下载依赖。

pom 文件中添加如下配置#

  1. public库成员仓库中添加我们自定义的仓库
    public库设置成员仓库
    public库设置成员仓库
  2. 配置远程仓库为私服地址。
<repositories>
<repository>
<id>public</id>
<name>public Repository</name>
<url>http://192.168.0.86:8081/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>public</id>
<name>Public Repositories</name>
<url>http://192.168.0.86:8081/repository/maven-public/</url>
</pluginRepository>
</pluginRepositories>
  1. 引入依赖
<dependency>
<groupId>org.soul</groupId>
<artifactId>commons</artifactId>
<version>1.0-SNAPSHOT</version>
</dependency>
  1. ssm项目就可以引用到soul代码
    在代码中就可以直接引用到部署到私服的soul项目代码
    在代码中就可以直接引用到部署到私服的soul项目代码

本文结束。

支持与分享

如果这篇文章对你有帮助,欢迎分享给更多人或打赏支持!

打赏
搭建Maven私服-Nexus
https://fanrich.eu.org/posts/程技/linux/搭建maven私服-nexus/
作者
richfan
发布于
2017-09-06
许可协议
CC BY-NC-SA 4.0

评论区

Profile Image of the Author
richfan
Hello, I'm richfan.
公告
欢迎来到我的博客!这是一则示例公告。
音乐
封面

音乐

暂未播放

0:000:00
暂无歌词
分类
标签
站点统计
文章
779
分类
8
标签
138
总字数
3,267,679
运行时长
0
最后活动
0 天前
站点信息
构建平台
Cloudflare Pages
博客版本
Firefly v6.13.5
文章许可
CC BY-NC-SA 4.0

文章目录