文章目录
- 一,创建Project,无法选择Java8
- 二,原因分析
-
- [1,Spring Boot将来会全力支持Java17,不再维护支持Java8的版本](#1,Spring Boot将来会全力支持Java17,不再维护支持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/
。
如下图所示。
- ①点击设置
- ②将原来的地址清空,输入https://start.aliyun.com/
通过这种方式,就能成功创建Java8项目了。