3

每当我在 IntelliJ IDEA 中运行单元测试时,我都会收到此错误:

/home/egervari/IdeaProjects/jobprep-stable/src/main/resources/dict/noun.txt

Maven:文件太大而无法过滤。它很可能是一个二进制文件,应该从过滤中排除。

问题是,我确实明确排除了这个文件:

    <filters>
        <filter>src/main/filters/environment.${env}.properties</filter>
    </filters>

    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
            <excludes>
                <exclude>src/main/resources/dict**</exclude>
            </excludes>
        </resource>
    </resources>

我的 pom.xml 写错了吗?我如何让 IDEA 尊重我实际写的内容?

基本上我想要实现的是将资源目录中的所有内容都作为类路径的一部分,但我只想过滤 applicationContext.xml。基本上,我希望 maven/idea 不接触其他文件,因为那里很容易有 20 兆。

4

2 回答 2

4

这就是解决方案。

    <filters>
        <filter>src/main/filters/environment.${env}.properties</filter>
    </filters>

    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
        <resource>
            <directory>src/main/dict</directory>
            <filtering>false</filtering>
        </resource>
    </resources>

现在启动时测试运行得更快。

于 2010-12-07T18:33:53.220 回答
0

您还可以根据文件类型而不是纯粹的位置进行过滤:

<includes>
   <include>**/*.xml</include>
   <include>**/*.properties</include>
</includes>

还有一个<excludes>标签。

于 2011-05-10T23:25:06.137 回答