繁体   English   中英

SNAPSHOT和RELEASE版本在Maven本地存储库中未获得更新

[英]SNAPSHOT and RELEASE versions are not getting update at Maven Local Repository

我已经建立了一个Nexus Repository来链接两个单独的项目。 我正在Nexus上成功构建和部署RELEASE和SNAPSHOT版本,但是当我尝试使用maven update在其他项目中使用更改时,此更改不会得到更新。

因此,我在一个Project中的A_Project.jar中所做的工作已在nexus存储库中进行了更新。

但是,当我尝试在B_Project上获取此更新的jar时,我得到的是maven本地存储库中的旧jar。 现在,如果我手动删除A_Project.jar,则显然可以获取更新的代码。

为了实现SNAPSHOT和RELEASED版本的更新版本,我尝试了以下方法。

  1. 我曾将-U与mvn clean build一起使用。
  2. 我已经如下更改了setting.xml和pom.xml中的更新策略。

在settings.xml中

       <pluginRepository>
            <id>deployment</id>
            <name>Internal Nexus Repository</name>
            <url>http://server/nexus/content/groups/public/</url>
            <layout>default</layout>
            <snapshots>
                <enabled>true</enabled>
            </snapshots>
            <releases>
                <updatePolicy>always</updatePolicy>
            </releases>
        </pluginRepository>

在pom.xml中

<repositories>
    <repository>
        <id>snapshots</id>
        <url>http://server/nexus/content/repositories/snapshots</url>
        <snapshots>
            <updatePolicy>always</updatePolicy>
        </snapshots>
        <releases>
            <updatePolicy>always</updatePolicy>
        </releases>
    </repository>
</repositories>

请帮助,因为这将成为我获取最新jar的重复过程。

我看不到您的settings.xml太多,无法说明发生了什么。 您所显示的只是pluginRepository部分,该部分用于解析Maven插件,而不是工件。

我建议从标准的settings.xml文件开始:

http://books.sonatype.com/nexus-book/reference/maven-sect-single-group.html

您可能需要修改中央存储库定义,以始终寻找快照的更新:

  <repositories>
    <repository>
      <id>central</id>
      <url>http://central</url>
      <releases><enabled>true</enabled></releases>
      <snapshots>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
      </snapshots>
    </repository>
  </repositories>

听起来您也在尝试重新发布相同的发行版本? 这是一个不好的做法,应该将发布视为不可变的(很多工具链都认为发布是发布的)。 增加版本号以发布新版本。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM