默认值及其标签解释
XML
<build>
<!-- 指定最终构建产物的名称, 例如生成的 JAR 文件的名称 -->
<finalName>${artifactId}-${version}</finalName>
<!-- 指定源代码文件的目录路径 -->
<sourceDirectory>src/main/java</sourceDirectory>
<!-- 指定 Maven 构建输出的目录路径 下列是默认值-->
<directory>target</directory>
<!-- 配置项目的资源目录, 例如配置文件、静态资源等 -->
<resources>
<resource>
<directory>src/main/resources</directory>
</resource>
</resources>
<!-- 指定编译后的类文件输出的目录路径 -->
<outputDirectory>target/classes</outputDirectory>
<!-- 指定默认的 Maven 构建目标。当运行 mvn 命令时,将执行指定的目标(用不到, 没理解) -->
<defaultGoal>install</defaultGoal>
<!-- 指定脚本文件的源代码目录路径(用不到) -->
<scriptSourceDirectory>src/main/scripts</scriptSourceDirectory>
<!-- 插件版本管理(无默认值,常用插件) -->
<pluginManagement>
<plugins>
<!-- Maven编译插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>x.x.x</version>
</plugin>
<!-- Springboot项目打包插件,生成JAR包 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>x.x.x</version>
</plugin>
</plugins>
</pluginManagement>
</build>
实际自己项目的配置(不常用或无需修改默认值的标签被去掉)
XML
<build>
<!-- 指定最终构建产物的名称, 例如生成的 JAR 文件的名称 -->
<finalName>app</finalName>
<!-- 配置项目的资源目录, 例如配置文件、静态资源等 -->
<resources>
<resource>
<directory>src/main/resources</directory>
<!-- 可以有占位符,并替换占位符 -->
<filtering>true</filtering>
<includes>
<include>bootstrap.properties</include>
<include>bootstrap-${application.environment}.properties</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<!-- 没有占位符 -->
<filtering>false</filtering>
<includes>
<include>banner.txt</include>
<include>logback-spring.xml</include>
</includes>
</resource>
</resources>
<!-- 插件版本管理 -->
<pluginManagement>
<plugins>
<!-- Springboot项目打包插件,生成JAR包 -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
</plugin>
<!-- Maven编译插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
</plugin>
</plugins>
</pluginManagement>
</build>