maven <resources>理解

来源:互联网 发布:qq群关键词排名优化 编辑:程序博客网 时间:2024/06/02 02:08

http://blog.csdn.net/ningbohezhijunbl/article/details/24799465

maven的Pom.xml中build下的resources,一直不太理解,现在总结一下。

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>

targetPath:指定build资源到哪个目录,默认是base directory

filtering:指定是否将filter文件(即build下的filters里定义的*.property文件)的变量值在这个resource文件有效,例如上面就指定那些变量值在configuration文件无效。

directory:指定属性文件的目录,build的过程需要找到它,并且将其放到targetPath下,默认的directory是${basedir}/src/main/resources

includes:指定包含文件的patterns,符合样式并且在directory目录下的文件将会包含进project的资源文件。

excludes:指定不包含在内的patterns,如果inclues与excludes有冲突,那么excludes胜利,那些符合冲突的样式的文件是不会包含进来的。

testResources:这个模块包含测试资源元素,其内容定义与resources类似,不同的一点是默认的测试资源路径是${basedir}/src/test/resources,测试资源是不部署的。


默认情况下,如果没有指定resources,目前认为自动会将classpath下的src/main/java下的.class文件和src/main/resources下的.xml文件放到target里头的classes文件夹下的package下的文件夹里。如果设定了resources,那么默认的就会失效,就会以指定的includes和excludes为准。例如,为了使打包的jar包里头包含.java源文件。


本人项目中的pom.xml

<build>        <resources>            <resource>                <directory>src/main/java</directory>                <includes>                    <include>com/changfu/business/tpp/util/templates/**.html</include>                    <include></include>                </includes>            </resource>            <resource>                <directory>src/main/resources</directory>            </resource>        </resources>


原创粉丝点击