部署项目到nexus私服

部署一个项目到私服

  1. 在父项目中的pom.xml加入

     <distributionManagement>
            <repository>
                <id>releases</id>
                <url>http://119.333.102.151:8081/repository/maven-releases/</url>
            </repository>
            <snapshotRepository>
                <id>snapshots</id>
                <url>http://119.333.102.151:8081/repository/maven-snapshots/</url>
            </snapshotRepository>
    </distributionManagement>
    
  2. settings.xml中加入账号密码

     <servers>
            <server>
                <id>releases</id>
                <username>admin</username>
                <password>XXXXX</password>
            </server>
            <server>
                <id>snapshots</id>
                <username>admin</username>
                <password>XXXXX</password>
            </server>
    </servers>
    
  3. 配置好部署的地址和账号密码后,直接执行下面命令即可

    mvn deploy
    

    如果项目pom里面的version以SNAPSHOT结尾则自动进入maven-snapshots仓库,否则进入maven-releases正式仓库

注意

  • 部署子项目的时候,务必把父项目一并部署,不然在别人引用的时候会报错。提示依赖找不到。

    Could not find artifact cn.com.minivision:idc-sdk-kms:pom:2.0.3 in XXXX
    
  • 不允许部署单个子项目。如果实在不想完整的部署一个父项目,可以跳过部署某个子项目到私服。在某个不想部署的子项目的pom.xml中加入如下:

    <plugin>
    	<groupId>org.apache.maven.plugins</groupId>
    	<artifactId>maven-deploy-plugin</artifactId>
    	<version>X.Y</version>
    	<configuration>
      		<skip>true</skip>
    	</configuration>
    </plugin>
    
  • 实在是想单独部署一个子项目,那推荐用打完整jar包,手动上传私服且禁止生成pom的方式。

    不到万不得已不用这样的方式。因为这种不能完美解决问题。会给以后项目的依赖冲突埋下隐患。

    这样的话maven第一次下载依赖的时候依然会报Could not find artifact,但是刷新第二次的话会通过。因为它第一次报错的时候依然会从远程私服下载jar到本地m2仓库。第二次刷新的时候,因为优先从本地查找,就直接走本地引用不会报错了。

在这里插入图片描述

部署第三方Jar到私服(尽量不要用)

  1. 登录私服网页地址

    http://119.333.102.151:8081/#browse/upload
    

    admin
    XXXX

  2. 选择上传到maven-local

    在这里插入图片描述

  3. 上传一定不能让私服自动生成空的pom

    在这里插入图片描述

  4. 上传后可以在仓库中浏览到没有生成空的pom,只有jar文件和记录版本的元数据文件。

    在这里插入图片描述

注意

  • 可以用mvn deploy:deploy-file 命令去上传jar包到私服,不过一定要加上 -DgeneratePom=false 禁止生成空的pom。细节可以参考官方文档

连接公司私服下载依赖

maven的settings.xml文件参考如下

公司的私服镜像地址http://119.333.102.151:8081/repository/group-maven/

该镜像仓库包含了公司本地所有的仓库、中央仓库、阿里的Spring仓库、谷歌仓库等

<?xml version="1.0" encoding="UTF-8"?>

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
    
   <!-- <localRepository>D:\jdk\apache-maven-3.6.3\.m2\repository</localRepository>-->

    <servers>
        <server>
            <id>releases</id>
            <username>admin</username>
            <password>XXXXX</password>
        </server>
        <server>
            <id>snapshots</id>
            <username>admin</username>
            <password>XXXXX</password>
        </server>
    </servers>

    <mirrors>
        <mirror>
            <id>default</id>
            <name>minivisionmaven</name>
            <url>http://119.333.102.151:8081/repository/group-maven/</url>
            <mirrorOf>*</mirrorOf>
        </mirror>
    </mirrors>

</settings>

idea配置如下参考

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值