Maven 快照仓库与发布仓库

快照知识库和 放手知识库的区别是什么?

这与建立仓库有关(像 ArtiFactory,Nexus 等)

100815 次浏览

发布存储库保存发布,快照存储库保存快照。在 maven 中,快照被定义为以 -SNAPSHOT 结尾的版本构件。部署后,快照将转换为时间戳。根据定义,快照是可变的,发布是不可变的。这就是为什么 Nexus 让你单独存储它们,因为通常你不在乎你是否丢失了快照,但是你会在乎你是否丢失了发布。这使得快照清理更容易处理。

释放艺术品

这些是特定的时间点版本。发布的构件被认为是坚固、稳定和永久的,以保证依赖于它们的构建随着时间的推移是可重复的。发布的 JAR 工件与 PGP 签名相关联,校验和验证二进制软件工件的真实性和完整性。Central Maven 存储库存储发布构件。

快照艺术品

快照捕获正在进行的工作并在开发过程中使用。快照工件同时具有版本号(如“1.3.0”或“1.3”)和时间戳。例如,commons-lang 1.3.0的快照构件可能名为 commons-lang-1.3.0-20090314.182342-1.jar。

Taken from Refcard

通常在 maven 中,我们有两种构建类型:

1) Snapshot builds: SNAPSHOT is the special version that indicates current deployment copy and not a regular, specific version. Maven checks the version for every build in the remote repository. The snapshot builds are nothing but development builds.

2) Release builds: 发布意味着删除构建版本 ID 中的 SNAPSHOT。这些是常规的构建版本。

将快照工件和发布工件分别推送到快照、发布存储库。

快照是专家的想法,给版本号为-SNAPSHOTS,其正在开发中,它可以随时更改。

内部存储库是具有固定版本号的发布存储库。您可以修改 SNAPSHOTS,但是该工件在释放后从不更改。

这里的 SNAPSHOT 并不意味着一个快照被冻结并且不会改变,SNAPSHOT 涵盖了几个快照,这些快照的修改不够大,不能用一个新的版本号来表示