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.io或start.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项目了。

相关推荐
蛋蛋的就会顺顺的2 小时前
hot100 p0——栈,贪心算法,动态规划
java·前端·javascript·算法·leetcode·力扣
余槐i2 小时前
PostgreSQL 函数索引报错 must be immutable:3种绕法与代价
数据库·后端·sql·postgresql·性能优化
需要8263 小时前
Spring Bean 生命周期:从实例化到销毁的完整钩子
java·后端·spring
小 黄 鸡3 小时前
HashMap 面试必会知识点详解(JDK 8)
java·面试·职场和发展
凤山老林4 小时前
Spring Boot 接入国密 SM2/SM3/SM4 的一些实践记录
spring boot·后端·python
伯恩bourne5 小时前
Spring Boot Bean 注册的两种方式:@Component 家族 vs @Configuration + @Bean
java·spring boot·后端
张彦峰ZYF5 小时前
停顿短不等于延迟低:G1、ZGC 与低延迟服务的目标分野、代价账本与选型标定
后端·回收暂停、应用停止总时长·到达安全点、分配停滞·屏障吃吞吐、并发线程吃核心·并发窗口吃堆余量·分区式靠挑回收集兑现目标·染色指针式不支持压缩引用
silvamux_5 小时前
curl 测试 OpenAI 兼容 API 的完整流程
java·人工智能·缓存·ai·oneapi
pride.li5 小时前
第03章 Python 教程-基础语法:注释与变量
服务器·前端·后端·python·算法·计算机视觉
省钱兄--zs5 小时前
深圳24小时自助健身房软硬件解决方案实战指南与开发流程详解
java·数据仓库·spring boot·小程序·架构