Java 删除“;src";项目中的文件夹

Java 删除“;src";项目中的文件夹,java,intellij-idea,gradle,Java,Intellij Idea,Gradle,IntelliJ IDEA创建的Gradle项目的默认结构为: module/src/main/java module/src/main/resources module/src/test/java module/src/test/resources 我想剪切src文件夹,因此我将留下: module/main/java module/main/resources module/test/java module/test/resources 我一直在从项目结构->模块中的每个可能的角落删除它

IntelliJ IDEA创建的Gradle项目的默认结构为:

module/src/main/java
module/src/main/resources
module/src/test/java
module/src/test/resources
我想剪切
src
文件夹,因此我将留下:

module/main/java
module/main/resources
module/test/java
module/test/resources
我一直在从项目结构->模块中的每个可能的角落删除它们。通过从IJ中单击它们来删除它们,但IJ会继续创建它们。我甚至将整个项目文件夹
“/src”
中的所有字符串替换为
,但它在下一次Gradle刷新+重建之前都有效


如何删除该文件夹?

您可以更改默认项目布局并从其路径中删除
src
文件夹,方法是更改源集属性,如下所示:

sourceSets {
    main {
        java {
            srcDirs = ['main/java']
        }
        resources {
            srcDirs = ['main/resources']
        }
    }
    test {
        java {
            srcDirs = ['test/java']
        }
        resources {
            srcDirs = ['test/resources']
        }
    }
}

您可以在中阅读。

您无法摆脱“main”或“test”源集。您唯一能做的就是将它们标记为已排除。

我不知道gradle,但src/main/只是maven中的一个惯例,您可以重新定义它。我很确定gradle也是如此(重新定义应该由Intelij来选择)回避了一个问题,那就是为什么你要违背行业标准的项目结构?我已经有太多的文件夹/文件,而这个特定的文件夹没有任何意义,或者至少我不理解这个目的。是的,我也做过。它正确地将这些dir标记为源代码/测试,但是仍然可以识别(并重新创建)旧的dir。。。您是否尝试过修改每个模块配置(Idea的项目结构属性内)中每个源集合的
上下文根
属性?是的,完全正确。我已经删除了带有“src”的每个目录,并创建了新的目录,但没有“src”,然后手动将目录标记为源和资源。但在渐变刷新和重建之后,它会恢复所有设置。不管我是通过IDE编辑还是用记事本在.idea文件夹中编辑,效果都一样。@spam你真的把它们从文件系统中删除了吗?从Intellij中删除它们并不需要在文件系统中删除它们。是的,我已经从文件系统中删除了它们。我不想去掉“main”和“test”。我想摆脱“src”中间人文件夹。对,他的代码对我也有用。问题是,它仍然不能阻止IJ重新创建旧的,但是新的确实有效。