maven eclipse:eclipse无法正确识别多个资源规则

时间:2014-08-07 11:51:51

标签: maven resources include pom.xml

我在<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时一样。

1 个答案:

答案 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>