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项目了。

相关推荐
晨非辰3 小时前
Linux权限管理速成:umask掩码/file透视/粘滞位防护15分钟精通,掌握权限减法与安全协作模型
linux·运维·服务器·c++·人工智能·后端
开发者小天10 小时前
python中For Loop的用法
java·服务器·python
flushmeteor10 小时前
JDK源码-基础类-String
java·开发语言
毕设源码-钟学长10 小时前
【开题答辩全过程】以 基于ssm的空中停车场管理系统为例,包含答辩的问题和答案
java
不愿是过客11 小时前
java实战干货——长方法深递归
java
小北方城市网12 小时前
Redis 分布式锁高可用实现:从原理到生产级落地
java·前端·javascript·spring boot·redis·分布式·wpf
六义义12 小时前
java基础十二
java·数据结构·算法
毕设源码-钟学长13 小时前
【开题答辩全过程】以 基于SpringBoot的智能书城推荐系统的设计与实现为例,包含答辩的问题和答案
java·spring boot·后端
笨手笨脚の13 小时前
深入理解 Java 虚拟机-03 垃圾收集
java·jvm·垃圾回收·标记清除·标记复制·标记整理
莫问前路漫漫13 小时前
WinMerge v2.16.41 中文绿色版深度解析:文件对比与合并的全能工具
java·开发语言·python·jdk·ai编程