好用常用人人都要会的最基本的Maven插件收集
把手上的好几个项目的pom整理了一遍 规范了一下model 整理出了一些插件 方便新手们入门maven
好用常用人人都要会的最基本的Maven插件收集
大部分的插件其实都可以从MAVEN官方的可用插件列表中直接找到
在这里取了比较常用并且实用的几个插件做一点说明
大多数使用场景无非是:
- 要自定义打包的名称
 - 要将打包后的jar包自动复制到某处
 - 要将外置lib目录和maven依赖一起打进去
 - 要根据环境复制对应的配置文件
 
这里选出的插件足以应对大部分情况了
Maven依赖管理插件maven-dependency-plugin
主要用于管理依赖,比如引入某个特殊的jar包,或者从某个jar包中提取文件tree命令和display-ancestors命令在搭建工程时是比较好用的,可以很方便的找出重复依赖项,保证依赖版本一致
常用功能
- list 列出的依赖关系
 - tree 以树型结构列出的依赖关系
 - copy-dependencies 拷贝某个依赖项
 - unpack-dependencies 解包某个依赖项
 - display-ancestors 显示所有父依赖
 
Maven构建小助手 build-helper-maven-plugin
主要用于为POM生成各种属性,比如打包时间、IP地址之类的,功能比较多就不上代码了。
常用功能
- add-source 将更多
source目录添加到POM - add-test-source 将更多
test source目录添加到POM - add-resource 将更多
resource directories目录添加到POM - add-test-resource 将更多
test resource directories目录添加到POM - attach-artifact Attach additional artifacts to be installed and deployed. 不知道???干啥的
 - maven-version 获取Maven核心版本
 - regex-property 使用正则生成某个属性
 - regex-properties使用正则生成属性
 - released-version Resolve the latest released version of this project.
 - parse-version Parse the version into different properties.
 - remove-project-artifact 用于在构建过程中删除某个作为依赖的项目以节省空间
 - reserve-network-port 保留一个未使用的端口号的随机列表
 - local-ip 获取当前主机IP
 - cpu-count 获取当前主机CPU核心数
 - timestamp-property 生成一个事件放入指定属性中 常用于在包名上附加打包时间
 - uptodate-property 检查某个属性根据检查结果设置其他属性
 - uptodate-properties 检查多个属性根据检查结果设置多个其他属性
 - rootlocation 重定义多模块构建的根目录
 
复制并重命名插件 Copy Rename Maven Plugin
功能字如其名,就是用来复制和重命名的,可以用来复制打包好的jar包,也可以在打包过程中复制文件。
常用功能
- copy 复制
 - rename 重命名
 - 没了
 
一个小栗子
1  |  | 
Maven编译插件 maven-compiler-plugin
主要用于设定编译环境和编译器的属性,是比较基础的插件
1  |  | 
SpringBootMaven插件spring-boot-maven-plugin
configuration.layout=ZIP 的用处
资料
作用
将该工程的布局改为ZIP布局,所有的lib将外置到jar包外,在打包时将com.example:demo下的所有依赖放入外置的lib目录
1  |  | 
