一. 安装Nexus

Nexus需要Java环境,请自行下载安装

1. Nexus下载地址

根据系统选择对应的版本,这里使用Centos7.x

nexus maven deploy 权限 nexus搭建maven_xml

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. 创建私服代理仓库

点击顶部设置按钮

nexus maven deploy 权限 nexus搭建maven_java_02


然后点击左侧Repository>Repositories> +Create repository

nexus maven deploy 权限 nexus搭建maven_java_03


选择maven2 (proxy)

nexus maven deploy 权限 nexus搭建maven_xml配置_04


分别填写NameRemote storage

其中Name随便写

Remote storage使用阿里maven仓库https://maven.aliyun.com/repository/public 最后点击Create repository完成创建

nexus maven deploy 权限 nexus搭建maven_xml配置_05

3. 将刚刚创建的repository加入maven-pulic组

点击maven-public

nexus maven deploy 权限 nexus搭建maven_java_06


将Repository加入Group,并设置刚刚创建的Repository的优先级,保存退出。

4. 仓库类型说明

nexus maven deploy 权限 nexus搭建maven_maven_07

  • maven-central:maven 中央库,默认从 https://repo1.maven.org/maven2/ 拉取
  • maven-releases:私库发行版,初次安装请将 Deployment policy 设置为 Allow redeploy
  • maven-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. 发布依赖到私服

  1. 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>
  1. 在项目中配置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>
  1. 执行 mvn deploy发布
  2. 关键字搜索结果,打完收工