项目中新建目录之后,要在该目录下新增java Class文件,右键——》New发现无对应选项。
原因:新建目录之后需要设置目录作用,从而让idea识别。
方法:File-Project Structure
对几种目录类型解释如下:
-
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 即可,对于maven项目则需要设置除Excluded 的所有。
被标注的目录会在右侧有一个总的概括。其中classes 虽然是 Excluded 目录,但是它有特殊性,可以不显示在这里。