gpt4 book ai didi

java - Maven SNAPSHOT 被视为 RELEASE

转载 作者:太空宇宙 更新时间:2023-11-04 12:16:28 28 4
gpt4 key购买 nike

我有使用 Maven 编译的 Java 项目。每个项目都有自己的 POM,如下所示:

<project ...>
<groupId>group.id</groupId>
<artifactId>scripts</artifactId>
<version>1.0.1-SNAPSHOT</version>
...
<dependencies>
<dependency>
<groupId>global</groupId>
<artifactId>common</artifactId>
<version>10.2.3-SNAPSHOT</version>
</dependency>
</dependencies>
...
</project>

快照作为发布

如果我执行mvn install,它将在我第一次执行该命令时编译/安装它。下次就不会安装了。看起来maven 认为它是一个RELEASE,无论它是一个SNAPSHOT。我可以在已安装包中包含的时间戳中看到这一点。如果我不更改版本号,时间戳也不会更改。

我相信我错过了 Maven 配置,但这对我们的开发影响很大,因为我们被迫为每个测试部署更改项目版本(及其依赖项)。

注释:我使用的是 Maven 3.3.3。看起来我在 3.1.0 中没有这种行为(我不是 100% 确定旧版本。无论如何都很旧)。Maven 与 Nexus 结合在一起。也许问题就出在于此,而我关注的焦点错了。

感谢您的提示。

编辑:问题是 :如何让 maven 每次都安装 SNAPSHOT,而不是像 RELEASE 那样第一次安装?

编辑已解决

我们总是使用mvn install来编译和安装源代码。由于某种原因,我们没有使用 mvn clean 命令。重新编译所有源代码的正确 Maven 命令是 mvn clean install

谢谢@VinayVeluri

最佳答案

如果代码更改需要版本,请自行对代码库进行版本控制,尽管这很麻烦,但给出了版本控制的想法。

如果必须自动更新快照,则使用

mvn -u clean install

添加后,此命令行参数会强制 Maven 检查远程存储库中的所有快照,并更新本地存储库(如果已过期)。

source

关于java - Maven SNAPSHOT 被视为 RELEASE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39365301/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com