maven build resources 的功能

Java 发表评论


build resoures的功能

maven 在打包时,默认资源文件都是在 src/main/resources 下面,因此只会打包该目录下的资源文件。
如果需要打包其他目录的资源文件,就需要通过resources指定目录。

这也就体现了 maven 默认大于配置的思想

打包其他目录资源文件的发方法

  1. 利用build-helper-maven-plugin插件
    <build>  
    ...  
    </plugins>  
        ...  
        <!--  
        利用此plugin,把源代码中的xml文件,  
        打包到相应位置,这里主要是为了打包Mybatis的mapper.xml文件   
        -->  
        <plugin>  
            <groupId>org.codehaus.mojo</groupId>  
            <artifactId>build-helper-maven-plugin</artifactId>  
            <version>1.8</version>  
            <executions>  
                <execution>  
                    <id>add-resource</id>  
                    <phase>generate-resources</phase>  
                    <goals>  
                        <goal>add-resource</goal>  
                    </goals>  
                    <configuration>  
                        <resources>  
                            <resource>  
                                <directory>src/main/java</directory>  
                                <includes>  
                                    <include>**/*.xml</include>  
                                </includes>  
                            </resource>  
                        </resources>  
                    </configuration>  
                </execution>  
            </executions>  
        </plugin>     
        ...  
    </plugins>       
    ...  
</build>  
  1. 利用maven-resources-plugin插件
<build>  
    ...  
    </plugins>  
        ...  
        <!--  
        利用此plugin,把源代码中的xml文件,打包到相应位置,  
        这里主要是为了打包Mybatis的mapper.xml文件   
        -->  
        <plugin>  
            <artifactId>maven-resources-plugin</artifactId>  
            <version>2.5</version>  
            <executions>  
                <execution>  
                    <id>copy-xmls</id>  
                    <phase>process-sources</phase>  
                    <goals>  
                        <goal>copy-resources</goal>  
                    </goals>  
                    <configuration>  
                        <outputDirectory>${basedir}/target/classes</outputDirectory>  
                        <resources>  
                            <resource>  
                                <directory>${basedir}/src/main/java</directory>  
                                <includes>  
                                    <include>**/*.xml</include>  
                                </includes>  
                            </resource>  
                        </resources>  
                    </configuration>  
                </execution>  
            </executions>  
        </plugin>     
        ...  
    </plugins>       
    ...  
</build>  

发表评论

邮箱地址不会被公开。 必填项已用*标注

昵称 *