假设我有一个A
依赖于项目的开发项目B
——该项目目前也在开发中,尚未发布。
所以,在A
的 POM 文件中,我有以下部分:
<dependency>
<groupId>com.example</groupId>
<artifactId>project-b</artifactId>
<version>1.0.0-SNAPSHOT</version>
</dependency>
在工作中,我们有一个远程仓库(Nexus)和一个 CI 框(运行 Jenkins)。
当我的同事对 SVN 进行更改B
并提交时,Jenkins 将选择该更改,编译它并将其放入远程仓库。大约在那个时候,我可能会B
在本地打开,进行更改,编译并将其安装到我的本地存储库中。
B
当我尝试在mvn clean install
A
本地时,Maven 现在如何解决?
- 如果找到一个,它是否总是默认为我的本地 SNAPSHOT?
- 它会始终默认为远程快照吗?
- 它会看时间戳吗?
- 它会做一些不同的事情吗?
前几天我们把自己弄得一团糟,基本上不得不手动删除本地存储库,以确保我们得到了我们期望得到的版本。所以我现在正试图弄清楚到底发生了什么。(因此,如果您有指向文档中详细说明的地方的链接,那也将不胜感激......)在本地,我有时在我的存储库文件夹中有一些 SNAPSHOT 构建,一个没有,一些有什么看起来像SNAPSHOT
文件名部分之后的时间戳......