第 1 节:使用 IDEA 创建 SpringBoot4 Maven 项目

第 1 节:使用 IDEA 创建 SpringBoot4 Maven 项目

环境前提:JDK21、Maven3.9+、MySQL8、Redis 已就绪

工具:IntelliJ IDEA(推荐社区版 / 旗舰版,2024 及以上版本,原生支持 JDK21)

1.1 新建项目

  1. IDEA 打开 → New Project → 选择 Spring Initializr(Spring 官方脚手架)
  2. 填写项目基础信息:
  • Service URL:默认 https://start.spring.io
  • TypeMaven Project(重点,不是 Gradle)
  • LanguageJava
  • Groupcom.demo(组织包名,自定义)
  • Artifactspringboot4-demo(项目名)
  • Namespringboot4-demo
  • DescriptionSpringBoot4 Maven Demo
  • Package namecom.demo.springboot4demo
  • PackagingJar
  • Java21(必须选 21!SpringBoot4 最低要求)
  • Spring Boot Version4.0.x(不带 M、SNAPSHOT,选正式版)
  1. 勾选依赖(本节只勾选基础依赖,后续模块按需新增)
    ✅ Spring Web:web 接口,写 http 接口必备
    ✅ Spring Data Redis:redis 整合
    ✅ MySQL Driver:mysql 驱动
    ✅ Spring Data JPA(或者 MyBatis,我们后面选 MyBatis-Plus,这里先只勾选基础驱动)

现在只勾选这 3 个核心依赖,MyBatis-Plus 手动在 pom.xml 引入,脚手架没有。

  1. 点击 Create,等待 IDEA 自动拉取 Maven 依赖。

⚠️ 如果下载很慢:检查前面配置的 maven settings.xml 阿里云镜像,IDEA 里面确认 Maven 使用自己本地的 Maven,不是内置 Maven。

IDEA 设置:File -> Settings -> Build, Execution, Deployment -> Build Tools -> Maven

Maven home:选择你本地解压的 maven3.9 目录,不要选 bundled。

✅ 当前页面勾选指引(SpringBoot 4.1.1)

你现在这个界面,需要勾选 3 个依赖

  1. Spring Web(就是当前选中这一行,打勾,提供 web 接口能力)
  2. Spring Data Redis:往下滚动列表找到这个,勾选,用来整合 Redis
  3. MySQL Driver:继续往下翻找到,勾选,MySQL 驱动

小提示:可以在顶部搜索框直接搜索名字快速定位,不用手动翻:

  • 搜索 Spring Web
  • 搜索 Spring Data Redis
  • 搜索 MySQL Driver

不要勾选:

Spring Data JPA、Spring Reactive Web 这些暂时不选,我们后面用 MyBatis-Plus,手动在 pom 引入。

可选推荐(开发神器,建议勾上)

Developer ToolsSpring Boot DevTools

作用:代码修改自动重启服务,开发调试很方便。


操作顺序:

  1. 勾选上面 3 个核心依赖(可选加上 DevTools)
  2. 右侧 Added dependencies 列表会出现你选中的这几项
  3. 点击右下角 Create 创建项目

创建完成后等待 IDEA 下载 Maven 依赖。

完成后我们做本节测试:刷新 maven、运行启动类,看是否正常启动。

1.2 查看自动生成的 pom.xml

打开 pom.xml,确认父工程版本是 SpringBoot4:

复制代码
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>4.0.0</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

已自动包含我们勾选的 starter:

  • spring-boot-starter-web
  • spring-boot-starter-data-redis
  • mysql-connector-j

1.3 项目目录结构(Maven 标准)

复制代码
springboot4-demo
├── src
│   ├── main
│   │   ├── java
│   │   │   └── com
│   │   │       └── demo
│   │   │           └── springboot4demo
│   │   │               └── Springboot4DemoApplication.java  //启动类
│   │   └── resources
│   │       ├── static
│   │       ├── templates
│   │       └── application.properties  //配置文件
│   └── test
│       └── java
└── pom.xml

1.4 第 1 节 场景测试

测试任务 1:确认 Maven 依赖加载完成

右侧 Maven 面板,刷新按钮🔄,看有没有红色报错。无红色代表依赖拉取成功。

测试任务 2:运行启动类

打开 Springboot4DemoApplication.java,右键 Run,观察控制台输出:

  1. 启动成功标志:Started Springboot4DemoApplication in xxx seconds
  2. 默认端口:8080

访问浏览器 / Postman:http://localhost:8080

SpringBoot 默认没有首页,会出现 Whitelabel Error Page这个是正常现象! 代表服务成功跑起来,只是还没写接口。

问题分析

java: 警告:源发行版 21 需要目标发行版 21

这个是IDEA 项目 SDK 和语言级别不匹配,SpringBoot4 要求源码和目标字节码版本都是 21,当前项目编译配置不对。

修复步骤

步骤 1:打开项目结构设置

快捷键:Ctrl + Alt + Shift + S

或者菜单 File -> Project Structure

  1. Project 选项卡
    • Project SDK:选择 21
    • Project language level:21 - Sealed classes, pattern matching for switch
  2. Modules 选项卡,选中你的 szyj 模块
    • Module SDK:21
    • Language level:同样选 21
      点击 Apply → OK

步骤 2:检查 Maven 编译配置(pom.xml)

打开 pom.xml,确认里面有下面配置(SpringBoot 父工程一般自带,没有就手动添加)

复制代码
<properties>
    <java.version>21</java.version>
</properties>

步骤 3:刷新 Maven + 清除缓存

  1. 右侧 Maven 面板,点🔄刷新按钮 Reload All Maven Projects
  2. 菜单 File -> Invalidate Caches... → 勾选 Clear file system cache and local history → Invalidate and Restart,重启 IDEA

步骤 4:重新运行启动类

重启完成后,打开 SzyjApplication.java,点击 main 方法左边绿色三角运行。


测试标准

✅ 正常:控制台不再报这个发行版警告,输出 SpringBoot 启动日志,最后出现 Started SzyjApplication

相关推荐
晴空蓝天3 小时前
Spring Boot 3.5 脚手架里的 JWT + Redis 双轨会话,双端 token 隔离我是这么设计的
java·spring boot·redis
凤山老林3 小时前
RocketMQ 5.0 实战避坑与调优:事务、延迟、轨迹及高可用落地指南
spring boot·rocketmq
TanYYF3 小时前
Spring Boot 2 与 Spring Boot 3 自动装配的区别及 Boot 3 装配流程详解
spring boot
RuoyiOffice3 小时前
SpringBoot3+OnlyOffice 自动保存版本:定时回存、间隔合并与 50 版上限怎么配
spring boot·在线文档·onlyoffice·版本管理·spring boot 3·自动保存·ruoyi office
huaweichenai3 小时前
spring boot使用hutool实现调用外部接口
java·spring boot
dkbnull4 小时前
Spring Boot配置文件敏感信息加密解密
spring boot·后端
白宇横流学长4 小时前
图书个性化推荐系统的设计与实现【源码+文档】
spring boot
RuoyiOffice4 小时前
SpringBoot3+Vue3+Flowable 企业审批平台全链路:从表单设计、节点权限到移动审批怎么落地
spring boot·vue3·uniapp·springboot3·flowable·审批系统·ruoyi office
Bs_MoneyMagnet5 小时前
基于springboot+vue的图书馆预约系统的设计与实现 源码+文档
java·vue.js·spring boot·后端·毕业设计·图书管理系统·计算机毕业设计