在父工程里的pom.xml配置
<!-- maven编译构建时的一些配置 -->
<build>
<finalName>${project.artifactId}</finalName>
<!-- 父工程定义的插件,子工程都能继承 -->
<plugins>
<!-- 资源文件拷贝的插件 -->
<!-- 我们通过逆向工程生成的mapper.xml配置文件,如果存放在src/main/Java文件目录下, 那么resources资源文件夹下就没有这些mapper.xml配置文件,
故需要:把指定目录的文件,当作资源文件来编译,有了这个插件,就能干这个活了。 -->
<!-- 该插件的作用 主要是处理将 主程序与 测试程序所需的源文件复制到输出编译文件夹中。 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<configuration>
<!-- 在构建路径中 指定源文件编译的字符编码 -->
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<!-- java编译插件,告诉maven在编译Java文件时使用什么版本的jre -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.2</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
<!-- 配置Tomcat插件的版本,具体的项目运行时,就是使用该版本,这里类似定义接口。 dependencyManagement给依赖定义了接口,pluginManagement给plugin插件定义了接口。 -->
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</pluginManagement>
</build>
子工程pom.xml,如下resources的配置,如果放在父项目中,则所有的项目都可以参考依赖。
<build>
<!-- maven-resources-plugin 插件会读取如下的resources配置,来完成文件的copy工作 -->
<resources>
<!-- 因为我们通过逆向工程生成的mapper.xml配置文件,是存放在Java文件目录下的,不是resources资源文件夹下,
resources资源文件夹是classes类路径文件。
默认是把src/main/resources下的文件编译到classes下,
如果配置,则之前的默认加载方式就失效了。 -->
<!-- 把src/main/java下的所有.xml文件拷贝到classes类路径下 -->
<resource>
<directory>src/main/java</directory>
<includes>
<include>**/*.xml</include>
</includes>
</resource>
<!-- 默认的加载方式失效,这里明确通过插件copy,把src/main/resources下的所有.xml文件拷贝到classes类路径下 -->
<resource>
<directory>src/main/resources</directory>
<includes>
<include>**/*.xml</include>
<include>**/*.properties</include>
</includes>
</resource>
</resources>
</build>
注意:一般情况下,编译器会把sources文件以及resource文件编译到classes目录,如果使用了maven-resources-plugin插件,并指定了resource的行为,那么默认的行为就失效了,参考我们自己配置的方式来copy文件到classes。
<!--对资源管理的插件,使用过程中发现maven-source-plugin可能会出现bug,推荐使用maven-resources-plugin-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>2.7</version>
<configuration>
<!-- 在构建路径中 指定源文件编译的字符编码 -->
<encoding>UTF-8</encoding>
</configuration>
</plugin>
<!--<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.1</version>
<configuration>
<attach>true</attach>
</configuration>
<executions>
<execution>
<phase>compile</phase>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>-->