java extension pack是启动器而非可选插件,它打包激活language support for java等6个核心插件,缺失则语法高亮、跳转、调试等功能全部失效;必须配合pom.xml或build.gradle及正确配置的jdk才能正常工作。

Java Extension Pack 是启动 Java 开发的硬性前提,不装它,VS Code 根本识别不了 .java 文件——连语法高亮都没有,更别说跳转、补全或调试。
为什么 Java Extension Pack 不是“可选”,而是“启动器”
它本身不提供功能,但把 Language Support for Java、Debugger for Java、Test Runner for Java 等 6 个核心插件打包激活。没它,后续插件可能因依赖缺失静默失效。
- 必须确保项目根目录存在
pom.xml或build.gradle,否则 Java Projects 视图为空,Ctrl+Click跳转会直接失败 - 装完必须重启 VS Code;右下角状态栏出现无感叹号的 Java 图标,才算就绪
- 如果
src/main/java没被识别为源码根目录,右键该文件夹 → Mark as Sources
Project Manager 切换多模块 Spring Boot 项目时别手动删 .vscode
日常开 5 个微服务(auth-service、user-center、order-api…),每个配独立端口和 application.yml。不用它,就得反复 File → Open Folder,再手动恢复 launch.json 和终端历史。
- 首次使用后,执行
Project Manager: Save Project(命令面板搜),项目名建议用服务名,别用默认路径名 - 它不管 JDK 版本——切换前请确认
java.home设置匹配当前项目(如jdk-17.0.2对应 Spring Boot 3.x) - 切换后,
launch.json、终端历史、甚至已打开的标签页都会还原,不是单纯“换文件夹”
Code Spell Checker 能救 getUseerById 这种低级拼写翻车
Java 编译器不报变量/方法名拼错,但会导致 NPE 或逻辑跳过。Code Spell Checker 实时标红,且关键在于它能按驼峰分词(userRepository → user+repository),不是简单字符串匹配。
- 默认词典不含常见框架术语(如
@RestController、Pageable),需右键 → Add to Workspace Dictionary - 对 Lombok 生成的方法(如
setUserName)识别良好,但自定义 getter/setter 命名风格需手动加词典 - 禁用 “Check in comments” 可避免误标注释里的 URL 或占位符
Spring Boot Extension Pack 让 application.yml 和 Dashboard 不再裸奔
没它,application.yml 里写错 spring: datasource: url: 的缩进或冒号,VS Code 不提示;运行中的 Spring Boot 实例也看不到健康状态、端点列表或 Actuator 数据。
- 安装后自动启用
Spring Boot Dashboard,点击即可启停、查看日志、刷新配置 -
application.yml支持 schema 校验(需项目含spring-boot-configuration-processor依赖) - 代码片段支持
@SpringBootTest、@DataJpaTest等常用测试模板,但@WebMvcTest需手动补全controllers = { ... }
Java Extension Pack 和 Spring Boot Extension Pack 必须成对出现,否则 Debugger for Java 无法正确解析 @SpringBootApplication 主类,调试时会卡在 SpringApplication.run(...) 外层,进不去你的 main 方法。Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











