Maven中的Build标签
Posted Kikochz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Maven中的Build标签相关的知识,希望对你有一定的参考价值。
[1] 基本元素
<build> ? <finalName>maven-build-demo</finalName> <defaultGoal>install</defaultGoal> <directory>${basedir}/target</directory> <finalName>${artifactId}-${version}</finalName> <filters> <filter>filters/filter1.properties</filter> </filters> ... </build>
-
finalName
-
defaultGoal
执行build任务时, 如果没有指定目标, 将使用默认值
如上配置: 在命令行中执行mvn, 则相当于执行mvn install
-
directory
build目标文件的存放目录, 默认在${basedire}/target , 即项目根目录下的target
-
fileName
build目标文件的名称, 默认情况为${artifactId}-${version}
-
filters
给出对资源文件进行过滤的属性文件的路径,默认位于${basedir}/src/main/filters/目录下。
属性文件中定义若干了键值对,用于在构建过程中将资源文件中出现的变量(键)替换为对应的值。
例如 properties文件中
有name=value , 则pom文件中定义的${name}值就是value
[2] Resource 配置
<build> ... <resources> <resource> <targetPath>META-INF/plexus</targetPath> <filtering>false</filtering> <directory>${basedir}/src/main/plexus</directory> <includes> <include>configuration.xml</include> </includes> <excludes> <exclude>**/*.properties</exclude> </excludes> </resource> </resources> <testResources> ... </testResources> ... </build>
-
resources
对应项目的resource文件,可以配置多个项目资源
-
targetPath
指定build后的resource存放的文件夹, 默认是basedir.
通常被打包在jar中的resources的目标路径是META-INF
-
filtering
true/false, 表示该pom配置的filter是否激活
-
directory
定义resource文件所在的文件夹, 默认为${basedir}/src/main/resource
-
includes
包含内容(编译时仅复制包含的内容)
-
excludes
排除内容(编译时不复制指定排除的内容)
-
testResourecs
定义和resource类似, 只不过在test时使用
[1]plugins配置
<build> ... <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>2.0</version> <extensions>false</extensions> <inherited>true</inherited> <configuration> <classifier>test</classifier> </configuration> <dependencies>...</dependencies> <executions>...</executions> </plugin> </plugins> </build>
-
GAV
指定插件的标准坐标
-
extensions
是否加载plugin的extensions, 默认为false
-
inherited
true/false, 这个plugin是否应用到该pom的子pom, 默认为true
-
configuration
配置该plugin期望得到的properties
-
dependencies
作为plugin的依赖
参考:
以上是关于Maven中的Build标签的主要内容,如果未能解决你的问题,请参考以下文章