java language server启动失败表现为no java runtime configured、状态栏无jdk版本、ctrl+space无响应、右键run灰掉;须通过java: configure java runtime配置arm64 jdk的/contents/home路径,禁用settings.json中java.home,首次打开.java文件会自动下载约100mb服务器,需确保路径有效、磁盘≥500mb、用户目录无中文或空格,多jdk项目应使用.workspace级.settings.json配置。

Language Server 启动失败的典型表现
VSCode 的 Java 功能(跳转定义、补全、错误提示、Run 按钮)全部依赖 Java Language Server(即 JDT-LS),但它不报错也不弹窗——失败时只表现为:No Java runtime configured、状态栏无 JDK 版本、Ctrl+Space 无响应、右键 Run 灰掉。这不是插件没装,而是服务器根本没起来。
必须用 Java: Configure Java Runtime 面板,别硬写 java.home
VSCode 1.85+ 已弃用 java.home 配置项,直接在 settings.json 里写会失效或冲突。正确路径是:
- 按
Cmd+Shift+P(Mac)或Ctrl+Shift+P(Win/Linux) - 输入
Java: Configure Java Runtime并回车 - 点击
+ Add JDK,粘贴 ARM64 JDK 的/Contents/Home路径
这个路径必须来自 /usr/libexec/java_home -V 输出中带 arm64 标记的那一行,不能是 which java 返回的 Rosetta 路径,也不能结尾带 /bin 或 /jre。
首次打开 .java 文件会自动下载 Language Server
扩展装完重启 VSCode 后,第一次打开项目里的任意 .java 文件,会触发约 100MB 的 Java Language Server 下载和启动。这个过程需要稳定网络(国内建议科学联网),卡在 Starting the Java Language Server 时,检查三件事:
-
java.home指向的路径是否存在且可读(ls -l <path></path>) - 磁盘剩余空间是否 ≥500MB(服务器解压后需缓存)
- 用户目录路径不含中文或空格(尤其 Windows 的
C:\Users\张三易导致静默失败)
多 JDK 项目要用 workspace 级配置
团队协作或跨项目开发时,全局 java.home 会打架。应在项目根目录建 .vscode/settings.json,内容如下:
{
"java.home": "/Library/Java/JavaVirtualMachines/temurin-17.jdk/Contents/Home",
"java.configuration.updateBuildConfiguration": "interactive"
}
删掉用户级 settings.json 里的 java.home,避免覆盖。这个配置只对当前文件夹生效,且 updateBuildConfiguration 设为 interactive 能在新增 pom.xml 时弹窗确认是否启用 Maven 支持——这点常被忽略,但直接影响类路径加载。
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











