Sources一般用于标注类似src这种可编译目录。有时候我们不单单项目的src目录要可编译,还有其他一些特别的目录也许我们也要作为可编译的目录,就需要对该目录进行此标注。只有Sources这种可编译目录才可以新建Java类和包,这一点需要牢记。
Tests一般用于标注可编译的单元测试目录。在规范的maven项目结构中,顶级目录是src,maven 的src我们是不会设置为Sources的,而是在其子目录main目录下的java 目录,我们会设置为 Sources。而单元测试的目录是src - test - java,这里的java目录我们就会设置为Tests,表示该目录是作为可编译的单元测试目录。一般这个和后面几个我们都是在 maven 项目下进行配置的,但是我这里还是会先说说。从这一点我们也可以看出IntelliJ IDEA对 maven 项目的支持是比彻底的。
Resources一般用于标注资源文件目录。在 maven 项目下,资源目录是单独划分出来的,其目录为:src - main -resources,这里的resources目录我们就会设置为Resources,表示该目录是作为资源目录。资源目录下的文件是会被编译到输出目录下的。
Test Resources一般用于标注单元测试的资源文件目录。在maven项目下,单元测试的资源目录是单独划分出来的,其目录为:src - test -resources,这里的resources目录我们就会设置为Test Resources,表示该目录是作为单元测试的资源目录。资源目录下的文件是会被编译到输出目录下的。
Excluded一般用于标注排除目录。被排除的目录不会被 IntelliJ IDEA 创建索引,相当于被 IntelliJ IDEA 废弃,该目录下的代码文件是不具备代码检查和智能提示等常规代码功能。
通过上面的介绍,我们知道对于非 maven 项目我们只要会设置src即可。
如上图箭头所示,被标注的目录会在右侧有一个总的概括。其中classes虽然是Excluded目录,但是它有特殊性,可以不显示在这里。
所以,
你想在哪新建Java class,就给设置为src就可以啦。