2010-09-22 88 views

回答

2

Maven assembly plugin致力于打造高度可定制的包,如ZIP,TGZ ...文件。定义,在描述符中,最终的包装(或组件)的含量,通过包括文件,目录,相关性等

Maven release plugin专用于释放过程,其中包括几个重复操作和操作。例如,它会做一些检查(是否有任何未被改变的更改,使用了一些SNAPSHOT库等),准备源控制管理(CVS,Subversion ...),修改pom版本(以去掉-SNAPSHOT),提交已修改的pom.xml等。 您可以有一个发布流程示例here


编辑

关于你的问题有关-SNAPSHOT。对于Maven,固定版本链接到永不变化的依赖关系。例如,具有相同固定版本的两个库必须相同。因此,例如,foo:bar:1.2.3是严格相同的另一foo:bar:1.2.3

这是一定的-SNAPSHOT版本的情况。关键字SNAPSHOT表示当前库正在开发中。因此,两个版本的foo:bar:1.2.3-SNAPSHOTfoo:bar:1.2.3-SNAPSHOT可能不完全相同。 Maven使用时间戳来检查哪一个是最新的。

所以在正常的发布过程中,你有你的1.2.3-SNAPSHOT版本,这是不再发展。所以在发布这个库之前,你必须修正版本,即将你的pom.xml版本移动到1.2.3

此修改可以通过简单修改pom.xml版本完成,也可以由Maven release plugin(或Maven version plugin)管理。

我希望现在对Maven的这个特定方面的解释已经很清楚。

+0

你可以把这些链接在一起吗?你怎么能删除-SNAPSHOT? – myusuf3 2010-09-22 16:08:28

+0

@garbagecollector我编辑了我的答案,以提供有关SNAPSHOT关键字的更多详细信息。 – romaintaz 2010-09-22 20:12:55

+0

有没有办法链接到教程来管理这个? – myusuf3 2010-09-22 21:34:43