0
点赞
收藏
分享

微信扫一扫

常用 Maven 插件介绍


maven-archetype-plugin 

http://maven.apache.org/archetype/maven-archetype-plugin/

Archtype 指 项 目 的 骨 架 ,Maven 初 学 者 最 开 始 执 行 的 Maven 命 令 可 能 就 是 mvn 

archetype:generate,这实际上就是让 maven-archetype-plugin 生成一个很简单的项目骨架,

帮助开发者快速上手。可能也有人看到一些文档写了 mvn archetype:create,但实际上 create

目标已经被弃用了,取而代之的是 generate 目标,该目标使用交互式的方式提示用户输入

必要的信息以创建项目,体验更好。maven-archetype-plugin 还有一些其他目标帮助用户自

己定义项目原型,例如你由一个产品需要交付给很多客户进行二次开发,你就可以为他们提

供一个 Archtype,帮助他们快速上手。

 

 

 

maven-assembly-plugin

http://maven.apache.org/plugins/maven-assembly-plugin/

maven-assembly-plugin 的用途是制作项目分发包,该分发包可能包含了项目的可执行文件、

源代码、readme、平台脚本等等。maven-assembly-plugin 支持各种主流的格式如 zip、tar. g z、

jar 和 war 等,具体打包哪些文件是高度可控的,例如用户可以按文件级别的粒度、文件集

级别的粒度、模块级别的粒度、以及依赖级别的粒度控制打包,此外,包含和排除配置也是

支持的。maven-assembly-plugin 要求用户使用一个名为 assembly.xml 的元数据文件来表述打

包,它的 single 目标可以直接在命令行调用,也可以被绑定至生命周期

 

 

maven-dependency-plugin

http://maven.apache.org/plugins/maven-dependency-plugin/

maven-dependency-plugin 最大的用途是帮助分析项目依赖,dependency:list 能够列出项目最

终解析到的依赖列表,dependency:tree 能进一步的描绘项目依赖树,dependency:analyze

可以告诉你项目依赖潜在的问题,如果你有直接使用到的却未声明的依赖,该目标就会发出

警 告 。 maven-dependency-plugin 还 有  很  多 目 标 帮 助  你 操 作 依  赖 文 件 ,  例 如22

dependency:copy-dependencies能将项目依赖从本地Maven仓库复制到某个特定的文件夹下

面。

 

 

maven-release-plugin

http://maven.apache.org/plugins/maven-release-plugin/

maven-release-plugin 的用途是帮助自动化项目版本发布,它依赖于 POM 中的 SCM 信息。

release:prepare 用来准备版本发布,具体的工作包括检查是否有未提交代码、检查是否有

SNAPSHOT 依 赖 、升 级 项目 的 SNAPSHOT 版本至 RELEASE 版 本 、 为项 目打 标 签等 等 。

release:perform 则是签出标签中的 RELEASE 源码,构建并发布。版本发布是非常琐碎的工作,

它涉及了各种检查,而且由于该工作仅仅是偶尔需要,因此手动操作很容易遗漏一些细节,23

maven-release-plugin 让该工作变得非常快速简便,不易出错。maven-release-plugin 的各种目

标通常直接在命令行调用,因为版本发布显然不是日常构建生命周期的一部分。

 

 

举报

相关推荐

0 条评论