在 intellij idea 中指定 jdk 路径需先确认本地 jdk 已正确安装并找到其根目录(含 bin/、lib/ 等),再通过 project structure 设置 project sdk 及 language level,多模块项目须单独配置各模块 sdk,最后检查运行配置和构建工具(maven/gradle)的 jdk 版本一致性。

在 IntelliJ IDEA 中指定 JDK 路径,关键不是“找按钮”,而是确保路径选对、层级正确、级别匹配。IDEA 不会自动猜你装在哪,尤其非默认路径或 macOS/Linux 多版本共存时,常静默失败。
确认本地 JDK 已装好并找到根目录
先别开 IDEA,终端里跑两行:
-
java -version 和 javac -version 都有输出(比如
openjdk version "17.0.2"),说明 JDK 真装好了 - 接着找安装根目录——不是
bin,不是jre,是包含bin/、lib/、jmods/的那一层:- Windows:
C:\Program Files\Java\jdk-17(若含空格,可试短路径C:\Progra~1\Java\jdk-17) - macOS:
/Library/Java/JavaVirtualMachines/jdk-17.jdk/Contents/Home - Linux:
/usr/lib/jvm/java-17-openjdk-amd64或用update-java-alternatives -l查
- Windows:
在 IDEA 里设项目级 JDK
打开项目后,快捷键 Ctrl+Alt+Shift+S(Windows/Linux)或 Cmd+;(macOS)调出 Project Structure:
- 左侧选 Project,右侧看 Project SDK
- 若为空,点 New → JDK,然后浏览到上面确认的根目录(再次强调:不能选
bin子文件夹) - 选中后,立刻检查 Project language level —— JDK 17 就选 17,JDK 11 就选 11,别留默认的 8
- 点 Apply(只点 OK 不生效)
多模块项目要单独配每个模块
如果项目有 api、service、test 等多个模块,且需要不同 JDK(比如测试用 JDK 11,主代码用 JDK 17):
- 在 Project Structure 中选左侧 Modules
- 逐个点开模块,在 Dependencies 标签页下找到 Module SDK
- 为每个模块手动选对应 JDK,并同步设好 Language level
- 注意:模块不自动继承 Project SDK,不设就可能还在用旧版本
顺手检查运行配置和构建工具
项目 SDK 设对了,不代表程序一定能跑起来:
- 右上角运行配置下拉菜单 → Edit Configurations → 检查 JRE 是否为 “Project default” 或明确指向目标 JDK
- Maven 项目:核对
pom.xml里的<source>17</source>和<target>17</target> - Gradle 项目:检查
build.gradle中sourceCompatibility = JavaVersion.VERSION_17
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











