在 IDEA 2019 中,我创建了一个 Gradle 项目并将以下行添加到build.gradle
文件中:
plugins {
id 'java'
}
sourceSets {
main {
java {
srcDir "../src"
include "com/example/abc/**"
exclude "com/example/abc/tst/**"
}
}
}
在编译项目时,编译器显然做了我所期望的:从../src
文件夹开始,它只编译除了子abc
包之外的包和子tst
包。
但是,在左侧的 IDEA 源代码树中,src
会显示 的全部内容。它使在项目中导航和理解编译的内容和未编译的内容变得更加困难。
显然,IDEA 正在解析 .gradle 文件,因为它正确理解了..\src
我的源代码的位置。但由于某种原因,它不尊重include
andexclude
语句。我应该怎么做才能使 IDEA 显示与正在编译的内容完全相同?
我知道我可以使用“将目录标记为排除”上下文菜单来隐藏文件夹。但这是一个糟糕的解决方案,因为它迫使我在不同的地方两次制作相同的东西,并且破坏了将所有内容都放在 .gradle 文件中的概念。