VSCode运行Spring Boot需java.home、Spring Boot Tools和Maven三者严格对齐:java.home须手动设为JDK根目录(非bin子目录、无末尾反斜杠),Spring Boot Tools需Red Hat官方扩展并启用,Maven项目须在含pom.xml的根目录下加载成功。

VSCode 能跑 Spring Boot,但不是装完插件点一下就成——关键在 java.home、Spring Boot Tools 和 Maven 构建环境三者对齐,缺一不可。配错一个,就会卡在“找不到主类”“断点不生效”“依赖红波浪线”上。
java.home 必须手动指定完整 JDK 路径,不能靠系统 JAVA_HOME
VSCode 的 Java 扩展不读系统 JAVA_HOME 或 PATH,只认配置项 java.home。即使终端里 java -version 输出 17,VSCode 仍可能报 “Java Home not set”。
- 路径必须指向 JDK 根目录,例如:
/Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home(macOS Arm64)、C:\Program Files\Eclipse Adoptium\jdk-17.0.9+9(Windows),不能是 bin 子目录,也不能带末尾反斜杠 - 路径中含空格或中文(如
C:\Program Files\...)易导致加载失败,建议重装到纯英文无空格路径(如C:\jdk-17) - 改完
settings.json后必须重启整个 VSCode 窗口(不是重载窗口),再看右下角状态栏是否显示 “Java 17” - Mac 用户若用 zsh,GUI 启动的 VSCode 可能根本没加载 shell 配置,此时仅靠
java.home显式配置才可靠
Spring Boot Tools 必须单独启用,且依赖 Maven 项目已加载
很多人装了 “Spring Boot Extension Pack”,但真正提供 application.yml 补全、Actuator 识别、Dashboard 视图的是其中的 Spring Boot Tools 子模块——它必须单独启用,且只在 Maven 项目被正确识别后才工作。
- 在扩展面板搜索
Spring Boot Tools,认准发布者是 Red Hat,安装后点击 Reload - 打开的必须是含
pom.xml的项目根目录,不是子文件夹,也不是单个.java文件 - 首次打开后等待右下角出现 “Spring Boot project detected”,没出现?说明项目未被识别,后续所有功能(包括右键 Run)都无效
- 若 Dashboard 不显示模块:点击左侧 Spring Boot 图标 → 右键空白区 →
Refresh Spring Boot Projects
启动必须走 Maven 构建流程,不能直接右键运行 .java 文件
Spring Boot 启动类不是普通 Java 主类,它依赖 spring-boot-maven-plugin 注入 classpath 和启动逻辑。直接右键 Application.java 运行会静默失败或报 NoClassDefFoundError。
立即学习“Java免费学习笔记(深入)”;
- 确保
pom.xml中spring-boot-starter-web的<scope>是compile(默认值),不能写成test,否则 VSCode 不识别 Web 能力,也不给启动入口 - 右键
pom.xml→Reload project,等右下角 “Java Projects” 状态变成 “Ready” - 真要稳定运行和传参,必须手写
.vscode/launch.json,而非依赖图形化右键菜单——后者无法指定--spring.profiles.active=dev或 JVM 参数 -
mainClass字段必须写全限定名(如com.example.demo.DemoApplication),projectName必须与pom.xml中的<artifactId>一致,否则启动时找不到类
常见静默失败点:application.properties 编码、Lombok、数据源误触发
这些错误往往不报红,但项目起不来,排查时容易忽略。
-
application.properties必须放在src/main/resources/下,且编码为 UTF-8 无 BOM;Windows 复制来的文件常带 BOM,VSCode 里看不出,但 Spring Boot 加载失败 - Lombok 注解(如
@Data)默认不生效,需在 VSCode 设置中开启 annotation processing,并确认pom.xml中lombok依赖<scope>为provided - 只要 classpath 里有
mysql-connector-java或HikariCP,Spring Boot 就会自动尝试配数据源,哪怕你根本没写@Repository——删掉无关驱动,或加spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAutoConfiguration
最常被跳过的其实是项目根目录加载动作:克隆完仓库、解压 ZIP 后,直接双击打开某个子文件夹,VSCode 就永远看不到 pom.xml,所有 Java 功能形同虚设。动手前先确认 Explorer 里能看到 pom.xml 在顶层,再开始配路径、装插件、写配置。


















