Maven --- <distributionManagement>标签

1.<distributionManagement>的作用: 负责管理构件的发布。这是一个环境变量    
<downloadUrl> URL </downloadUrl> 其它的Maven项目可以通过该URL下载并引用当前Maven项目的构件.
<status> 当前Maven项目的状态.可用的状态有以下几种.并且这个值不是人为设置的.而是Maven自动设置的
none : 未指明状态,默认值
converted : 该Maven项目的构件已经被转换为兼容Maven 2
partner : 该Maven项目的构件保持与另一个库的Maven版本一致
deployed : 该Maven项目的构件是通过Maven 2或Maven 3发布的,最常用的值
verified : 该Maven项目的构件已经被验证过


2.<distributionManagement>中的<repository>
<uniqueVersion>指定是否产生一个唯一性的version number还是使用address里的其中version部分.(true or false)
<id>  库的id
<name> 库的名称
<url> 库的url
<layout> default或者legacy

3.<distributionManagement> 中的 <repository> && <snapshotsrepository>各自的含义:

maven仓库分为两种 release发布仓库(<repository>) 和 snapshot快照仓库(<snapshotsrepository>)
snapshot快照仓库用于保存开发过程中的不稳定版本,release正式仓库用来保存稳定的发行版本。

定义一个组件/模块为快照版本  只需要在pom文件中的该模板的版本号后面加上 -SNAPSHOT就可以了.  注意:必须是大写
maven会根据模块的版本号(pom文件中的<version>版本号</version>)中是否带有-SNAPSHOT来判断这个是快照版本还是正式版本.


如果是快照版本:
在mvn deploy时会自动发布到快照版本库中.
而使用快照版本的模块,在不更改版本号的情况下,直接编译打包时,maven会自动从镜像服务器上下载最新的快照版本.


如果是正式发布版本:
那么在mvn deploy时会自动发布到正式版本库中,
而使用正式版本的模块,在不更改版本号的情况下,编译打包时,如果本地已经存在该版本的模块则使用本地的而不是主动去镜像服务器上下载

原文地址:https://www.cnblogs.com/tinyj/p/9803068.html