• SNAPSHOT包上传nexus成功,下载失败


    x-SNAPSHOT.jar上传nexus成功,下载失败

    两个项目:项目a与项目b

    项目b需要引入项目a的 a-api.jar。

    dependency信息

    <!--  b/ pom.xml -->
    <!-- 引入项目a的api -->
    <groupId>com.wsy.a</groupId>
    <artifactId>a-api</artifactId>
    <version>1.0-SNAPSHOT</version>
    

    a-api.jar已经deploy至nexus中,但是b中引入失败。

    问题定位:

    第一步:

    cd 至项目b目录下,使用mvn install -X查看详细构建日志,验证

    1. 读取的配置文件没有问题;
    2. mirror中的镜像地址没有问题,是我的nexus地址;

    第二步:

    再次去nexus中查看,地址 ip:port/repository/maven-public/

    可在浏览器中直接打开,上面确实是有a-api.jar文件

    第三步:

    继续看mvn install -X的日志信息,发现查找的库始终是central,没有去查分组中的maven-snapshot库,

    maven-public 重新加入maven-snapshot库,并且刷新索引,然而还是没用。

    第四步:

    基本可以确认问题是

    从nexus中下载snapshot包失败,猜想本地上传的jar都会下载失败。

    搜索发现一句话

    Maven内置的插件远程仓库配置,关闭了对SNAPSHOT的支持,防止不稳定的构建

    所以需要添加对SNAPSHOT的支持

    怎么添加对SNAPSHOT的支持?

    在 settings.xml 中设置属性 profiles --> profile --> repositories --> repository --> snapshots --> true

    第五步

    使用profile来定义仓库属性,增加对SNAPSHOT的支持

    <!-- .m2/settings.xml -->
    <!-- 去掉mirro配置,统一使用 profile repository 来管理远程仓康 -->
    
    <profiles>
      <profile>
        <id>nexus</id>
        <repositories>
          <repository>
            <id>nexus-snapshots</id>
            <url>http://ip:port/repository/maven-public/</url>
            <!-- 添加对`SNAPSHOT`的支持 -->
            <snapshots>
              <enabled>true</enabled>
            </snapshots>
            <!-- 添加对`RELEASE`的支持 -->
            <releases>
              <enabled>true</enabled>
            </releases>
          </repository>
        </repositories>
      </profile>
    </profiles>
    
    <activeProfiles>
      <!-- 与 profile.id 对应 -->
      <activeProfile>nexus</activeProfile>
      <!-- <activeProfile>aliyun</activeProfile> -->
    </activeProfiles>
    
    

    mvn install 成功构建

    感悟:

    纸上得来终觉浅,绝知此事要躬行。

    只有当你会了,理解了,融会贯通了,才能感觉到豁然开朗。

  • 相关阅读:
    [转]Asp.Net MVC EF各版本区别
    web攻击之七:常见CDN回源问题总结
    web攻击之六:DNS攻击原理与防范
    web攻击之四:DOS攻击
    web攻击之五:上传漏洞
    web攻击之三:SQL注入攻击的种类和防范手段
    web攻击之二:CSRF跨站域请求伪造
    TCP洪水攻击(SYN Flood)的诊断和处理
    DDoS攻防战(三):ip黑白名单防火墙frdev的原理与实现
    DDoS攻防战(二):CC攻击工具实现与防御理论--删除
  • 原文地址:https://www.cnblogs.com/wangshuyu/p/15535753.html
Copyright © 2020-2023  润新知