06.Maven 之 Nexus 使用

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/masteryourself/article/details/86297984

1. Nexus 安装

1.1 前提条件
  • jre 环境
1.2 上传 nexus-2.11.2-03-bundle.tar.gz 文件后解压
    tar -zxvf nexus-2.11.2-03-bundle.tar.gz
1.3 编辑 bin/nexus 脚本,配置 RUN_AS_USER 参数
    RUN_AS_USER=root
1.4 启动 nexus
    ./nexus start
1.5 访问

2. Nexus 简介

Nexus

  • 3rd party: 无法从公共仓库获得的第三方发布版本的构件仓库

  • Apache Snapshots: 用了代理ApacheMaven仓库快照版本的构件仓库

  • Central: 用来代理maven中央仓库中发布版本构件的仓库

  • Central M1 shadow: 用于提供中央仓库中M1格式的发布版本的构件镜像仓库

  • Codehaus Snapshots: 用来代理CodehausMaven 仓库的快照版本构件的仓库

  • Releases: 用来部署管理内部的发布版本构件的宿主类型仓库

  • Snapshots: 用来部署管理内部的快照版本构件的宿主类型仓库

3. 上传 jar 包到私服

3.1 项目配置
    <!-- 发布到私服 -->
    <distributionManagement>
        <repository>
            <id>user-release</id>
            <name>User Project Release</name>
            <url>http://192.168.188.100:8081/nexus/content/repositories/releases/</url>
        </repository>

        <snapshotRepository>
            <id>user-snapshots</id>
            <name>User Project SNAPSHOTS</name>
            <url>http://192.168.188.100:8081/nexus/content/repositories/snapshots/</url>
        </snapshotRepository>
    </distributionManagement>
3.2 全局环境配置
  • 必须要配置 mvn 发布的权限,否则会报 401 错误,在 settings.xml 中配置权限,其中 id 要与 pom 文件中的 id 一致
    <servers>
        
        <!-- 私服地址的用户名/密码 -->
        <server>
            <id>user-release</id>
            <username>admin</username>
            <password>admin123</password>
        </server>
        <server>
            <id>user-snapshots</id>
            <username>admin</username>
            <password>admin123</password>
        </server>
        
    </servers>
3.3 发布
    mvn deploy

4. 从私服下载 jar 包

4.1 单个项目
  • 在 maven 项目中的 pom.xml 文件中指定私服地址
    <!-- 使用私服仓库 -->
    <repositories>
        <repository>
            <id>nexus</id>
            <name>nexus</name>
            <url>http://192.168.188.100:8081/nexus/content/groups/public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </repository>
    </repositories>
    <!-- 使用私服插件 -->
    <pluginRepositories>
        <pluginRepository>
            <id>nexus</id>
            <name>nexus</name>
            <url>http://192.168.188.100:8081/nexus/content/groups/public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>
4.2 全局环境
  • 在 maven_home/conf/settings.xml 文件中加入如下配置
    <profiles>
    
        <!-- maven 私服地址 -->
        <profile>
            <id>nexusProfile</id>
            <repositories>
                <repository>
                    <id>nexus</id>
                    <name>nexus</name>
                    <url>http://192.168.188.100:8081/nexus/content/groups/public/</url>
                    <releases>
                        <enabled>true</enabled>
                    </releases>
                    <snapshots>
                        <enabled>true</enabled>
                    </snapshots>
                </repository>
            </repositories>
        </profile>
        
    </profiles>
    
    <!-- 激活 -->
    <activeProfiles>
    
    	<activeProfile>nexusProfile</activeProfile>
    	
    </activeProfiles>

猜你喜欢

转载自blog.csdn.net/masteryourself/article/details/86297984
0条评论
添加一条新回复