一. 安装Nexus
Nexus需要Java环境,请自行下载安装
1. Nexus下载地址
根据系统选择对应的版本,这里使用Centos7.x
2. 解压
tar xf nexus-3.34.0-01-unix.tar.gz
nexus-3.34.0-01
:nexus服务目录sonatype-work
: 私库目录
3. 修改nexus配置文件
vi nexus-3.34.0-01/etc/nexus-default.properties
根据需要修改端口applicaiotn-port
并根据修改,开放对应端口或者关闭防火墙
4. 启动Nexus
bin/nexus help #查看启动帮助
bin/nexus start #启动服务
5. 访问Nexus服务
http://你的IP:8081/
二. Nexus配置
1. 点击Sign in 登录并修改默认密码
默认密码在**sonatype-work
**私库目录下
cd sonatype-work/nexus3/
cat admin.password
2. 创建私服代理仓库
点击顶部设置按钮
然后点击左侧Repository>Repositories> +Create repository
选择maven2 (proxy)
分别填写Name和Remote storage;
其中Name随便写
Remote storage使用阿里maven仓库https://maven.aliyun.com/repository/public
最后点击Create repository完成创建
3. 将刚刚创建的repository加入maven-pulic组
点击maven-public
将Repository加入Group,并设置刚刚创建的Repository的优先级,保存退出。
4. 仓库类型说明
maven-central
:maven 中央库,默认从 https://repo1.maven.org/maven2/ 拉取maven-releases
:私库发行版,初次安装请将 Deployment policy 设置为 Allow redeploymaven-snapshots
:私库快照(调试版本)maven-public
:仓库分组,把上面三个仓库组合在一起对外提供服务,在本地 maven 基础配置 settings.xml 或项目 pom.xml 中使用
三. 使用
1. 配置本地maven下载镜像
- 第一种方式:通过
settings.xml
设置
<mirrors>
<mirror>
<!--该镜像的唯一标识符。id用来区分不同的mirror元素。 -->
<id>maven-public</id>
<!--镜像名称 -->
<name>maven-public</name>
<!--*指的是访问任何仓库都使用我们的私服-->
<mirrorOf>*</mirrorOf>
<!--该镜像的URL。构建系统会优先考虑使用该URL,而非使用默认的服务器URL。 -->
<url>http://10.211.55.111:8081/repository/maven-public/</url>
</mirror>
</mirrors>
- 第二种方式:通过项目
pom.xml
配置;会覆盖setting.xml配置
<repositories>
<repository>
<id>maven-nexus</id>
<name>maven-nexus</name>
<url>http://10.211.55.111:8081/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
如果不需要配置私服,使用阿里公共maven(https://maven.aliyun.com/repository/public
)替换对应的url即可。
2. 发布依赖到私服
- 在
settings.xml
中配置私服的用户名和密码
<servers>
<server>
<id>releases</id>
<username>admin</username>
<password>123456</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>123456</password>
</server>
</servers>
- 在项目中配置pom.xml
<distributionManagement>
<repository>
<!--id和setting.xml的server id保存一致-->
<id>releases</id>
<name>Releases</name>
<url>http://10.211.55.111:8081/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<!--id和setting.xml的server id保存一致-->
<id>snapshots</id>
<name>Snapshots</name>
<url>http://10.211.55.111:8081/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
- 执行
mvn deploy
发布 - 关键字搜索结果,打完收工