Pom 文件中的build标签用于项目打包所需要的插件,是使用如果不添加,那我们项目使用的插件如tomcat就不会打入jar包,jar包运行就会有问题。
1. build标签
1.1 全局配置 (project build)
针对整个项目的所有情况都有效
1.2. 环境配置(profile build)
针对不同的profile配置
2. 配置说明
2.1. 基本元素
- defaultGoal
执行build任务时,如果没有指定目标,将使用的默认值。
如上配置:在命令行中执行mvn,则相当于执行mvn install - Directory
build目标文件的存放目录,默认在${basedir}/target目录 - finalName
build目标文件的名称,默认情况为${artifactId}-${version} - filter
定义*.properties文件,包含一个properties列表,该列表会应用到支持filter的resources中。也就是说,定义在filter的文件中的name=value键值对,会在build时代替${name}值应用到resources中。 maven的默认filter文件夹为${basedir}/src/main/filters
2.2 Resource 配置
![](https://img-blog.csdnimg.cn/direct/2060e00de65142b789a6e81947401967.png)
- Resources
一个resources元素的列表。每一个都描述与项目关联的文件是什么在哪里 - Targetpath
指定build后的resource存放的文件夹,默认是basedir。
通常被打包在jar中的resources的目标路径是META-INF - filtering
true/false,表示为这个resource,filter是否激活 - directory
定义resource文件所在的文件夹,默认为${basedir}/src/main/resources - includes
指定哪些文件将被匹配,以*作为通配符 - excludes
指定哪些文件将被忽略 - testResources
定义和resource类似,只不过在test时使用
2.3 plugins配置
用于指定使用的插件
- GAV
指定插件的标准坐标 - extensions
是否加载plugin的extensions,默认为false - inherited
true/false,这个plugin是否应用到该pom的孩子pom,默认为true - configuration
配置该plugin期望得到的properties - dependencies
作为plugin的依赖 - executions
plugin可以有多个目标,每一个目标都可以有一个分开的配置,可以将一个plugin绑定到不同的阶段。假如绑定antrun:run目标到verify阶段
2.4. pluginManagement配置
pluginManagement的配置和plugins的配置是一样的,只是用于继承,使得可以在孩子pom中使用。 则在子pom中,我们只需要配置: