在 IntelliJ IDEA 中,Project Structure
(项目结构)对话框是一个非常重要的配置界面,它允许你对项目的各个方面进行详细的设置和管理。下面将详细介绍 Project Structure
中各个主要部分的功能和用途。
1. Project(项目)
- Project SDK:指定项目所使用的 Java 开发工具包(JDK)版本。你可以选择已经安装在本地的 JDK,也可以点击
New
按钮添加新的 JDK。这决定了项目编译和运行时所使用的 Java 环境。 - Project language level:设置项目的语言级别,它决定了项目中可以使用的 Java 语言特性。例如,如果你选择
11 - Local - variable type inference
,则可以在代码中使用 Java 11 的局部变量类型推断特性。 - Project compiler output:指定项目编译输出的目录,编译后的
.class
文件会存放在此目录下。
2. Modules(模块)
- Sources:
- Source Folders:标记为源文件夹的目录会被 IDE 识别为 Java 源代码所在的目录,IDE 会对这些目录下的 Java 文件进行编译。通常,
src/main/java
会被标记为源文件夹。 - Test Folders:用于存放测试代码的目录,例如
src/test/java
。IDE 会将这些目录下的测试代码与主代码区分开来,方便进行单元测试等操作。 - Resources Folders:存放项目资源文件的目录,如配置文件(
.properties
、.xml
等)、静态资源(图片、CSS、JavaScript 文件等)。这些资源文件会被打包到最终的项目中。 - Excluded Folders:被排除的目录不会被 IDE 处理,例如临时文件目录、构建输出目录等。
- Source Folders:标记为源文件夹的目录会被 IDE 识别为 Java 源代码所在的目录,IDE 会对这些目录下的 Java 文件进行编译。通常,
- Paths:
- Output path:指定模块编译输出的目录,编译后的
.class
文件会存放在此目录下。可以选择使用项目级别的编译输出目录,也可以为每个模块单独指定。 - Test output path:指定测试代码编译输出的目录。
- Output path:指定模块编译输出的目录,编译后的
- Dependencies:
- 管理模块的依赖关系,包括项目内部的其他模块依赖、外部库依赖(如 Maven 或 Gradle 依赖)等。你可以通过
+
按钮添加不同类型的依赖,如JARs or directories
(本地 JAR 文件或目录)、Maven
(通过 Maven 坐标添加依赖)等。
- 管理模块的依赖关系,包括项目内部的其他模块依赖、外部库依赖(如 Maven 或 Gradle 依赖)等。你可以通过
3. Libraries(库)
- 用于管理项目所使用的外部库。这些库可以是本地的 JAR 文件,也可以是通过 Maven 或 Gradle 等构建工具下载的库。在
Libraries
中,你可以查看、添加、删除和编辑项目所依赖的库。
4. Facets(特性)
- 针对不同类型的项目,提供了一些额外的配置选项。例如,对于 Web 项目,你可以配置 Web 应用的部署描述符(
web.xml
)、Web 资源目录等;对于 Android 项目,你可以配置 Android 相关的特性和参数。
5. Artifacts(构件)
- 用于定义项目的打包方式和输出文件。常见的构件类型包括 JAR、WAR、EAR 等。你可以指定哪些模块、资源和依赖要包含在构件中,以及构件的输出位置和名称。例如,对于一个 Web 项目,你可以创建一个 WAR 构件,将项目的源代码、资源文件和依赖库打包成一个 WAR 文件,用于部署到应用服务器上。
6. SDKs(软件开发工具包)
- 除了 Java SDK 外,还可以管理其他类型的 SDK,如 Android SDK、Kotlin SDK 等。你可以在这里添加、删除和配置不同的 SDK,以便在项目中使用相应的开发工具和库。
通过 Project Structure
对话框,你可以对项目的各个方面进行全面的配置和管理,确保项目能够正确编译、运行和打包