我在<build>
下面有一个带有以下内容的pom.xml:
<resources>
<resource>
<directory>${basedir}/src/main/resources</directory>
<filtering>true</filtering>
<excludes>
<!-- exclude binary files. They get corrupted by filtering -->
<exclude>**/*.zip</exclude>
</excludes>
</resource>
<!-- copy binary files separately without filtering. They get corrupted by filtering -->
<resource>
<directory>${basedir}/src/main/resources</directory>
<filtering>false</filtering>
<includes>
<include>**/*.zip</include>
</includes>
</resource>
</resources>
现在,当我使用maven install构建jar时,这非常有效。然后它会从过滤中排除zip文件,但无需过滤即可单独复制它们。
然而,当我做一次maven eclipse:eclipse时,我在eclipse下看到(右键单击)MyProject->Properties->Java Build Path->Source->MyProject/src/main/resources
,** / * .zip被排除在外。显然,我的pom中只有第一个<resource>
元素被识别出来。
我需要同时认可,因为在开发环境中工作时我还需要将zip文件复制到targetEclipse。
知道怎么做到这一点吗?
关于日食的maven文件:eclipse状态:
在执行之前调用生命周期阶段generate-resources的执行。
所以关于资源,它应该像我执行maven install时一样。
答案 0 :(得分:0)
所以我自己弄清楚了......: 显然eclipse:eclipse只允许每个资源目录一个配置而忽略所有其他配置。 所以我创建了第二个资源directoryx,在那里我放了所有的二进制文件。我现在只将过滤应用于不包含二进制文件的过滤。这样就可以使用eclipse:eclipse和install:
<resources>
<resource>
<directory>${basedir}/src/main/resources</directory>
<filtering>true</filtering>
</resource>
<!-- copy binary files separately without filtering. They get corrupted by filtering -->
<resource>
<directory>${basedir}/src/main/bin</directory>
<filtering>false</filtering>
</resource>
</resources>