Ubuntu 下 Maven 构建 Spring Boot 项目报错 release version 17 not supported 解决方案

一、问题背景

在 Ubuntu 服务器上使用 Maven 构建 Spring Boot 项目时,执行:

mvn clean package -DskipTests

出现如下错误:

ERROR\] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.14.1:compile Fatal error compiling: error: release version 17 not supported *** ** * ** *** ### 二、问题原因分析 该问题并不是 Maven 本身的问题,而是 **Java 环境配置不一致**导致的。 通过检查发现: java -version javac -version 输出结果为: > openjdk version "21.0.7" > > javac 17.0.18 说明当前系统环境存在问题: | 工具 | 实际版本 | |------------|------| | java(运行时) | 21 | | javac(编译器) | 17 | 而 Maven 在构建项目时,会依赖运行时 Java 环境,并结合编译器执行编译操作。当两者版本不一致时,就可能出现: release version 17 not supported *** ** * ** *** ### 三、解决方案 统一 Java 运行环境与编译环境为 **JDK 17**。 #### 1. 查看系统可选 Java 版本 > sudo update-alternatives --config java > > sudo update-alternatives --config javac *** ** * ** *** #### 2. 切换 Java 版本为 17 在 `java` 选项中选择: > /usr/lib/jvm/java-17-openjdk-amd64/bin/java 示例: > Selection Path > > ----------------------------------------------- > > 1 /usr/lib/jvm/java-17-openjdk-amd64/bin/java 输入: > 1 完成切换。 *** ** * ** *** #### 3. 验证版本是否一致 > java -version > > javac -version > > mvn -version 理想输出: > java 17 > > javac 17 > > Maven Java version: 17 *** ** * ** *** #### 4. 重新构建项目 > mvn clean package -DskipTests 构建成功。

相关推荐
金融小白数据分析之路1 小时前
java 打包exe maven 版本
java·开发语言·maven
想不明白的过度思考者2 小时前
一个叫Swagger的工具,让写接口文档变成享受
java·spring boot·接口·swagger
QC班长10 小时前
Maven公司私库配置踩坑点
java·服务器·maven·intellij-idea
Devin~Y11 小时前
大厂Java面试实录:Spring Boot/Cloud、Kafka、Redis、K8s 与 Spring AI(RAG/Agent)三轮连环问
java·spring boot·redis·mysql·spring cloud·kafka·kubernetes
zb2006412013 小时前
SpringBoot详解
java·spring boot·后端
闫利朋13 小时前
Ubuntu 24.04 桌面安装向日葵完整指南
linux·运维·ubuntu
霸道流氓气质14 小时前
SpringBoot+LangChain4j+Ollama+RAG(检索增强生成)实现私有文档向量化检索回答
java·spring boot·后端
MiNG MENS15 小时前
基于SpringBoot和Leaflet的行政区划地图掩膜效果实战
java·spring boot·后端
2601_9498146915 小时前
Spring Boot中的404错误:原因、影响及处理策略
java·spring boot·后端