maven pom中build的配置
阅读数:196 评论数:0
跳转到新版页面分类
应用软件
正文
在Maven的pom.xml文件中,存在如下两种build
<project>
<build>...</build>
<profiles>
<profile>
<build>...</build>
</profile>
</profiles>
</project>
第一种被称为Project Build,另一种被称为Profile Build。
Project Build和Profile Build的共有元素:
1、共用的基本build元素
<build>
<defaultGoal>install</defaultGoal>
<directory>${basedir}</directory>
<finalName>${artifactId}-${version}</finalName>
</build>
defaultGoal:执行构建时默认的goal或phase,如jar或者package等。
directory:构建结果所在路径,默认为${basedir}/target目录。
finalName:构建最终结果的名字,该名字可能在其他plugin中被改变。
2、资源
资源往往不是代码,无需编译,而是一些配置文件,构建过程往往会将资源文件从源路径复制到指定的目标路径。
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
</resources>
(1)resource元素
build过程中涉及的资源文件。
(2)targetPath
资源文件的目标路径
(3)filtering
构建过程是否对资源进行过滤,默认false。
(4)directory
资源文件的路径,默认位于${basedir}/src/main/resources目录下。
(5)includes
一组文件名的匹配模式,被匹配的资源文件将被 构建过程处理。
(6)excludes
一组文件名的匹配模式,被匹配的资源文件将被构建过程忽略,同时被includes和excludes匹配的资源文件,将被忽略。
(7)filters
给出资源文件进行过滤的属性文件的路径,默认位于${basedir}/src/main/filters/目录下,属性文件中定义若干键值对,在构建过程中,对于资源文件中出现的变量(键),将使用属性文件中该键对应的值替换。
(8)testResources
test过程中涉及的文件,默认位于${basedir}/src/test/resources/目录下,这里的资源文件不会被构建到目标构建中。
3、构建过程和到的插件
(1)extensions
是否加载该插件的扩展,默认false。
(2)inherited
该插件rconfiguration中配置是否可以被继承,默认true。
(3)configuration
该插件所需的特殊配置,父子项目之间可以进行覆盖或者合并。
(4)dependencies
该插件所特有的依赖类库。
(5)executions
该插件的goal(一个插件可以包含多个goal)的执行方式。