IDEA创建Spring项目无法使用Java8的解决方案

文章目录

一,创建Project,无法选择Java8

1,无法选择Java8

在使用Spring Initializr向导创建新项目时,遇到了无法选择Java 8版本的问题。

这个问题表现为,向导中只提供了Java 17和21版本,而没有Java 8的选项。

如下图所示。

2,选择JDK17报错

即使在本地JDK环境设置为1.8的情况下,尝试选择Java 17或21版本进行项目创建时,也可能会遭遇错误提示,导致创建过程无法顺利完成。

bash 复制代码
Selected version of Java 17 is not supported by the project SDK '1.8'. Either choose a lower version of Java, or set a higher version of the SDK.

To download additional SDKs, click the JDK drop-down.

二,原因分析

1,Spring Boot将来会全力支持Java17,不再维护支持Java8的版本

创建Spring项目时,IDEA等集成开发环境会通过访问Spring Initializr服务来生成初始项目结构。

然而,由于国际版的Spring Initializr已默认禁用了对Java 8的支持,直接访问start.spring.iostart.springboot.io将无法满足需求。

这个问题的根源在于Spring Boot 3.0.0的发布。

Spring官方在推出这一版本时明确指出,Java 17将成为未来的主流开发版本,并且所有的Java EE API都将迁移到Jakarta EE。

这意味着,开发者在编写代码时,需要将原有的javax包导入语句更改为jakarta。

此外,通过访问Spring Boot的官方网站,我们可以发现,自2023年11月24日起,Spring Boot 3.0以下版本已经停止了官方支持。

所以用向导创建根据,默认是3.0以上版本,而这些Spring版本要求JDK17及其以上版本

这进一步解释了为什么在Spring Initializr中无法选择Java 8作为项目的基础版本。

三,解决方案

1,使用国内阿里的项目模板

为了解决这一问题,我们可以采取一种变通方案:通过阿里云的国内服务来间接创建Spring项目。

具体做法也非常简单,将Spring Initializr的源地址从国际版更改为阿里云版,将https://start.spring.io/或者http://start.springboot.io/替换为 https://start.aliyun.com/

如下图所示。

通过这种方式,就能成功创建Java8项目了。

相关推荐
前端双越老师几秒前
Nest.js 和 Spring Boot 为何如此像?写给前端转 Java 的同学
java·spring boot·全栈
JL1511 分钟前
Java+Go 混合架构怎么搭?收官 50 道面试题 + 学习路线
java·架构·golang
IT_陈寒17 分钟前
Redis踩了个大坑,原来DEL命令也会卡住整个实例
前端·人工智能·后端
Tattoo_Welkin22 分钟前
IDEA 中常用操作记载
java·elasticsearch·intellij-idea
音符犹如代码27 分钟前
Arthas classloader + sc 实战:JVM 类加载与手动加载
java·jvm·spring boot
一个水瓶座程序猿.35 分钟前
基于Spring AI RAG 的AI知识库前端交互实现
前端·人工智能·spring
乐启国际旅行社有限公司42 分钟前
Java线程池实战:文旅系统批量任务性能优化(团期生成/数据导出)
java·开发语言·性能优化
Listen·Rain1 小时前
用AI开发出一个AI
java·人工智能·spring boot·tomcat·intellij-idea·mybatis·visual studio
AI人工智能+电脑小能手1 小时前
【大白话说Java面试题 第203题】【09_Zookeeper篇】第4题:ZooKeeper 的节点类型有哪些?
java·zookeeper·分布式锁·分布式协调·znode
zhiSiBuYu05171 小时前
Flask 请求与响应新手实战指南
后端·python·flask