maven中关于resources的一些标签及解释
本不想写的(毕竟已经学了maven很长时间了),可是因为不知道其中的缘由,确确实实又找不到详细的资料(查过官方文档,但是说真的,看不懂在说什么,也看过csdn的其他资料,有多数都是从官方文档翻译过来的)来解释这些标签是什么意思.也免得自己日后忘了
<build>
<resources>
<resource>
<!-- <targetPath>resources</targetPath>-->
<directory>src/main/java</directory>
<filtering>false</filtering>
<includes>
<include>**/*.txt</include>
</includes>
<!-- <excludes></excludes>-->
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
<includes>
<include>**/*</include>
</includes>
</resource>
</resources>
</build>
首先resources和resource算是固定的套路
-
<directory> : 你想对其操作的文件路径.比如我所想操作的是src/main/java中的所有txt文件.(可以用${baseDir}/src/main/java代替)
-
<targetPath> : 你所希望的将txt文件放置到那里,比如我想将其放置到类文件中的/resources下.(千万要注意的是:由于下面的include是** / *.txt,那么就会将其放置到target下的/resource/**/ *.txt.也就是说原来的txt文件前面的目录仍旧会带着的)
-
<filtering> : 指的是你是否希望过滤这些文件,一般为:false.false的意思就是你不希望过滤掉这个文件,希望留着.true就是你想将这些文件扔掉,不保存到target目录中
-
<includes> 算是固定的一种写法吧.
-
<include>希望保留到target目录中的文件.比如我希望* * /*.txt留下来.
-
<exclude> : 希望排除掉的一些文件,规范和<include>一样
千千万万要注意的是,如果类路径下的resources中有其他的文件,并且你还想保留到target中,你必须要显式的写出来,否则你原先写的resource标签会将默认的标签掩盖,也就是说resources目录下的文件不再被保存到target中.