Maven 命令深度理解
Maven 命令看起来简单,一学即会 。其实,Maven 命令底层是插件的执行过程。了解插件和插件目标才有助于深刻的理解 Maven命令。
插件与命令的关系
Maven本质上是一个插件框架,它的核心并不执行任何具体的构建任务,所有这些任务都交给插件来完成。

Maven 实际上是一个依赖插件执行的框架,每个任务实际上是由插件完成。所以,Maven 命令都是由插件来执行的。
Maven 命令的分类
一种必须在项目中运行,视为项目命令;另外一种则不需要,视为全局命令。
Maven 命令格式解读
Maven 命令都是由插件来执行的,其语法格式如下所示:



此命令以分号为分隔符,包含了 groupId,artifactId,version,goal 四部分。
若 groupId 为 org.apache.maven.plugins 则可以使用上述的简写形式,也就是说和下面的命令是等价的:

都是执行了 maven-help-plugin 这个 plugin 中的 effective-pom 这个 goal。每次都要敲这么长一串命令是很繁琐的,因此才有了上述的简写的形式。
提醒:Maven 命名有要求,Maven 团队维护官方插件的保留命名方式是 maven-<myplugin>-plugin。

关注下方二维码
每天推送优质文章
你会有意想不到的收获
标签: