Maven 常见插件
前言
上章我们了解了Maven的基础命令和生命周期. 本章我们详细的聊聊插件,为后面的打包做基础.
插件
所有的插件配置都是写在pom.xml
文件的<build>
目录之间的.我们常见的Maven插件如下所示:
maven-compiler-plugin
JDK版本和编码
maven-compiler-plugin
1.8
1.8
utf-8
maven-resources-plugin
设置Resources编码
org.apache.maven.plugins
maven-resources-plugin
${project.build.sourceEncoding}
maven-jar-plugin
Jar包 指定启动类
org.apache.maven.plugins
maven-jar-plugin
1.8
1.8
com.yanxml.win.AWTFileReaderDemo
true
lib/
maven-war-plugin
war包
org.apache.maven.plugins
maven-war-plugin
src/main/resources/static
WEB-INF/classes
true
false
maven-source-plugin
源码包
maven-source-plugin
2.4
package
jar-no-fork
org.apache.maven.plugins
maven-source-plugin
2.1
true
compile
jar
maven-surefire-plugin
跳过单元测试
maven-surefire-plugin
2.6
true
<skip>true</skip>
或mvn package -Dmaven.test.skip=true
maven-shade-plugin
所有依赖包压成一个包
org.apache.maven.plugins
maven-shade-plugin
2.4.3
package
shade
com.meiyou.topword.App
${maven.compile.source}
${maven.compile.target}
org.apache.maven.plugins
maven-shade-plugin
1.2.1
package
shade
com.zhaoyanblog.Launcher
META-INF/spring.handlers
META-INF/spring.schemas
maven-dependency-plugin
所有依赖包另外输出
org.apache.maven.plugins
maven-dependency-plugin
2.10
copy-dependencies
package
copy-dependencies
${project.build.directory}/lib
org.apache.maven.plugins
maven-dependency-plugin
copy
package
copy-dependencies
runtime
target/lib/
maven-assembly-plugin
自定义打包(Jar/Tar.gz)
maven-assembly-plugin
${package}-${package.version}
true
false
${basedir}/scripts/${package.format}/common/package.xml
自定义打包(package.xml文件)
0.1
tar
images
/images
target/${package}-${package.version}.war
/
${package}-${package.version}.war
0755
spring-boot-maven-plugin
springboot打包插件
org.springframework.boot
spring-boot-maven-plugin
package
repackage
${start-class}
注: 更多的打包插件,请查看http://maven.apache.org/plugins/index.html 官方提供的文档.
Reference
[1]. Maven的几个常用plugin
[2]. maven常用插件: 打包源码 / 跳过测试 / 单独打包依赖项
[3]. maven关于打包的那些插件
[4]. Java技术–maven的assembly插件打包(依赖包归档
[5]. 使用maven插件对java工程进行打包
[6]. Offical Maven Plugin Doc
还没有评论,来说两句吧...