问题:Spring Boot 项目启动失败
Spring Boot 项目启动失败:从「程序包不存在」到成功启动(完整排查过程)
项目:墨卷阅读平台(mojuan-reading-platform)
技术栈:Spring Boot 3.5 + MyBatis + Maven + MySQL
开发工具:IntelliJ IDEA 2026 Ultimate
本文记录了项目启动过程中遇到的一个典型问题,以及完整的排查思路和解决过程。
一、问题描述
项目创建完成后,我编写了第一个后端接口:
- BookController
- BookService
- BookMapper
- Book
- ReadingPlatformServerApplication
但是运行项目时,IDEA 提示大量错误,例如:
程序包 lombok 不存在 程序包 org.springframework.web.bind.annotation 不存在 程序包 org.apache.ibatis.annotations 不存在 程序包 org.springframework.boot 不存在二、原因
查看 IDEA 构建日志,发现了一个非常关键的信息:
编译模块: mojuan-reading-platform而不是:
reading-platform-server问题就出在这里。
项目目录如下:
mojuan-reading-platform │ ├── docs ├── database ├── reading-platform-server ├── reading-platform-web(后续创建) └── README.md整个仓库实际上是一个 Git Repository。
真正的 Spring Boot 工程只有:
reading-platform-server但是 IDEA 在创建项目时,将:
mojuan-reading-platform也当成了一个普通 Java Module。
于是运行时流程变成:
IDEA ↓ 编译 ↓ mojuan-reading-platform ↓ 找不到 Spring Boot 依赖 ↓ 程序包不存在因此所有 Spring、MyBatis、Lombok 包全部报错。
三、正确解决方法
如果“模块”下拉框里仍然没有 reading-platform-server,说明 IDEA 模块配置还没正确导入。这时回到右侧 Maven 面板,点击一次“重新加载所有 Maven 项目”,再重新打开运行配置。
四、感悟
本次问题并不是:
- Spring Boot 配置错误
- Maven 下载失败
- MyBatis 配置错误
- Lombok 配置错误
真正原因是:
IDEA 运行时编译了错误的 Module。
导致编译器没有使用 Spring Boot 工程中的依赖,因此所有 Spring 包全部提示:
程序包不存在五、总结
这次排查最大的收获,并不是修复了一个 Bug。
而是彻底理解了:
- Git 仓库
- Maven 工程
- IDEA Module
- Spring Boot 启动类
它们之间的关系。
整个启动流程如下:
Git Repository(mojuan-reading-platform) │ ├── docs ├── database ├── reading-platform-server │ └── pom.xml │ ▼ Maven 下载依赖 │ ▼ IDEA 编译 reading-platform-server │ ▼ ReadingPlatformServerApplication │ ▼ Spring Boot 启动 │ ▼ Tomcat(8080) │ ▼ REST API经验总结
按照下面的顺序排查:
- 检查
pom.xml是否引入正确依赖。 - 确认 Maven 已成功下载依赖。
- 执行
mvn compile验证 Maven 是否能够正常编译。 - 检查 IDEA 是否识别了正确的 Maven Module。
- 检查 Run Configuration 是否使用了正确的模块、工作目录和启动类。
按照这个思路,大部分 Spring Boot 项目启动阶段的问题都能够快速定位。
结语
本次踩坑让我真正理解了 Git 仓库、Maven 工程和 IDEA Module 三者的区别。很多看似是 Spring Boot 或 Maven 的问题,其实最终都可以归结到 IDEA 的项目结构和运行配置。理解原理,比记住操作步骤更重要,这也是搭建企业级项目时必须掌握的基础能力。