pom.xml中resouces标签
resources
是maven
在编译项目时将资源文件或者额外的文件赋值到输出目录(target/classes)
中。通常包括配置文件,属性文件,模板文件,jar包
等。
resouces
中可以包含resouce
。也就是可以自定义的配置多个资源配置。
directory
使用
<directory/>
元素指定项目中资源文件
所在的目录。默认的资源目录是
src/main/resources
。
<resources><resource><directory>src/main/resources</directory></resource>
</resources>
filtering
是否开启
资源过滤
。过滤会替换文件中的变量,例如${project.version}
。默认为false
。
可以参考maven资源过滤补充部分
<resources><resource><directory>src/main/resources</directory><filtering>true</filtering></resource>
</resources>
targetPath
指定资源文件在构建输出目录中的路径。默认是在编译后的根目录
${pom.build.outputDirectory}
也就是target/classes
。可以自定义输出目录的路径。
<resources><resource><directory>src/main/resources</directory><filtering>true</filtering><targetPath>/</targetPath></resource>
</resources>
includes
可以指定要包含那些资源文件。默认是全部包含
**/*
。这里采用路径匹配的ant
。
<resources><resource><directory>src/main/resources</directory><filtering>true</filtering><targetPath>/</targetPath><includes><include>**/*.properties</include></includes></resource>
</resources>
excludes
可以指定要排除那些资源文件。默认
不排除
。这里采用路径匹配的ant
与includes
一致。通常一些模板文件或者字体文件等可以指定让他不开启资源过滤。
<resources><resource><directory>src/main/resources</directory><filtering>true</filtering><targetPath>/</targetPath><includes><include>**/*</include></includes><excludes><exclude>**/*.xlsx</exclude><exclude>**/*.pdf</exclude></excludes></resource><resource><directory>src/main/resources</directory><filtering>false</filtering><targetPath>/</targetPath><includes><include>**/*.xlsx</include><include>**/*.pdf</include> </includes></resource>
</resources>