Spring Boot入门HelloWorld项目exec-maven-plugin执行失败求助
问题分析与解决
核心问题
日志里的UnsupportedClassVersionError是关键:你的代码用Java 17编译(类文件版本61.0),但运行时用的是JDK14(仅支持最高58.0版本),同时Spring Boot 3.0.0本身要求Java 17+,但你pom里配置的java.version是1.8,版本完全混乱导致冲突。
解决步骤
1. 统一Java版本(适配Spring Boot 3.x要求)
Spring Boot 3.0.0及以上强制要求Java 17,先确保本地安装JDK17,再做以下配置:
- 修改pom.xml里的
java.version:
<properties> <java.version>17</java.version> </properties>
- 配置NetBeans项目JDK:右键项目 → 属性 → 库 → Java平台,选择JDK17。
- 确保运行Maven时使用的JDK为17,可检查系统
JAVA_HOME指向JDK17,或在NetBeans的Maven设置里指定JDK路径。
2. 清理旧编译文件
之前残留的高版本编译文件会干扰运行,执行Maven清理命令:
mvn clean
之后用Spring Boot自带插件运行项目(无需手动调用exec-maven-plugin):
mvn spring-boot:run
3. 关闭NetBeans自动编译功能
日志显示"Compile On Save"已开启,该功能可能导致编译版本不一致,关闭方式:
右键项目 → 属性 → 构建 → 编译 → 取消勾选"Compile On Save"。
降级替代方案(若不想用Java 17)
如果坚持使用Java 8或14,需降级Spring Boot到2.x版本(2.x支持Java 8/11/14),修改pom里的parent版本:
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.15</version> <!-- 2.x最新稳定版 --> <relativePath/> </parent>
同时保持java.version与本地JDK版本一致(比如JDK8设为1.8,JDK14设为14)。
内容的提问来源于stack exchange,提问作者sedat
相关产品推荐
相关产品推荐

