IntelliJ:如何将非java文件复制到bin目录中?

mar*_*ark 21 intellij-idea

我的模块包含java源文件中的一些非java文件.构建模块时,java文件被复制到bin文件夹(并包含在jar工件中),但是非Java文件被省略.

我也需要复制它们(这就是Eclipse所做的).注意,它们确实出现在左侧的项目树视图中,我没有以任何方式排除它们.

如何让它们进入bin文件夹(jar工件)?

谢谢.

Cra*_*der 27

Settings(Preferences在Mac上)| Compiler| 资源模式.

这个问题重复/涉及到:

  • 在IDEA 12中,它被改为**排除**模式(默认为`!*.form;!*.java;!*.class;!*.groovy;!*.as;!*.flex;!*. kt`),因此默认情况下将复制所有其他文件.这将使它成为一个不太受欢迎的问题. (6认同)

Xia*_*com 6

在IDEA 14.1.4上,src/main/java/my/package不复制文件夹中的xml文件.我的编译器设置是!?*.java;!?*.form;!?*.class;!?*.groovy;!?*.scala;!?*.flex;!?*.kt;!?*.clj;!?*.aj.

我通过添加以下内容更改了gradle文件:

test {
    resources {
        srcDir 'src/main/java'
        include '**/*.xml'
    }
}
Run Code Online (Sandbox Code Playgroud)

它开始工作.我不确定我是否遗漏了任何东西,但我找不到那个部分反映在项目设置上.

如果您正在使用Maven,以下代码应具有相同的效果:

<build>
    <testResources>
        <testResource>
            <filtering>false</filtering>
            <directory>src/test/java</directory>
            <includes>
                <include>**/*.xml</include>
            </includes>
        </testResource>
        <testResource>
            <directory>src/test/resources</directory>
        </testResource>
    </testResources>
</build>
Run Code Online (Sandbox Code Playgroud)

我在这里作为答案发布,因为它可能有助于具有相同问题和上述答案的人可能无法正常工作.