Spring Boot 3.5项目快速搭建需严格匹配JDK17、Maven及IDEA配置:JDK路径禁含空格/中文,Maven配阿里云镜像与本地仓库,IDEA中选Spring Initializr并手动指定3.5.0版本,pom.xml仅保留17,application.yml固定端口8081,运行前执行Maven Reload并验证Tomcat启动日志。

想用Spring Boot 3.5或4.1快速搭起第一个项目,却卡在环境配置、版本冲突、启动报错上——JDK装了但java -version不认、Maven下载依赖总失败、IDEA里新建项目直接红标一堆、甚至连Hello World都跑不起来。这不是你技术不行,而是版本组合踩坑太密集,尤其3.5和4.1对Java基线、依赖管理、自动配置逻辑差异巨大,一步选错,后面全崩。
先锁死JDK版本:别让Java拖垮整个环境
Spring Boot 3.5要求Java 17+,4.1更是强化Java 21+特性支持,但新手最容易栽在JDK安装路径和环境变量上。Windows下安装JDK 17时,【安装路径绝对不能含中文或空格】,比如D:\Program Files\Java\jdk-17这种默认路径看似正常,实际会导致Maven解析失败、IDEA识别不到JRE;必须手动改成D:\Java\jdk-17。macOS/Linux用户则要确认shell配置文件(~/.zshrc或~/.bash_profile)里export JAVA_HOME=$( /usr/libexec/java_home -v 17 )是否生效,执行source后还要验证java -version输出是否为17.0.x。
验证完JDK,立刻运行mvn -v检查Maven——如果提示“JAVA_HOME not set”,说明Path里%JAVA_HOME%\bin没加对,或者系统变量写成了用户变量。
选对Spring Boot版本:3.5和4.1不是随便切的开关
Spring Boot 3.5是当前最新稳定版(2025年5月发布),适合需要生产就绪、又不想碰预发布风险的同学;4.1则是2026年6月刚发布的增强版,虚拟线程默认开启、gRPC原生支持,但【它仍是RC1预发布版本,不建议毕业设计或课程作业直接使用】。如果你只是想跑通REST接口、连MySQL、写个登录页,无脑选3.5;如果老师明确要求体验新特性或你有I/O密集型场景压测需求,再上4.1。
版本选择错误会直接导致起步依赖失效:比如用Spring Initializr选4.1却配JDK 17,@SpringBootApplication类编译报错;或者用3.5 Starter却在application.yml里写spring.threads.virtual.enabled=true——这个配置在3.5里根本不存在。
三种建项目方式,只推荐一种给新手
方法一:Spring Initializr网页创建(最稳妥)
访问https://www.php.cn/link/4ac20f72e05b86b3dc759608b60f5d67 → Project选Maven → Language选Java → Spring Boot选3.5.0(别点4.1!)→ Group填com.example → Artifact填demo → Packaging选Jar → Java选17 → Dependencies加Spring Web + Spring Data JDBC(别加Spring Security或Redis,新手先砍掉复杂度)→ 点Generate,解压ZIP后用IDEA直接Open。
方法二:IDEA内置Spring Boot插件创建(易翻车)
File → New → Project → 左侧选Spring Initializr → 右侧URL保持https://start.spring.io → SDK选已配置好的JDK 17 → Spring Boot version下拉菜单里【务必手动输入3.5.0,不要选Latest】 → 后续步骤同方法一。很多新手点“Latest”结果拉到4.1快照版,项目生成后pom.xml里spring-boot-starter-parent版本号是4.1.0-SNAPSHOT,Maven直接报错无法解析。
方法三:命令行mvn archetype:generate(仅限调试用)
执行mvn archetype:generate -DarchetypeGroupId=org.springframework.boot -DarchetypeArtifactId=spring-boot-starter-parent -DarchetypeVersion=3.5.0 -DgroupId=com.example -DartifactId=demo -Dversion=0.0.1-SNAPSHOT -Dpackaging=jar,但新手极易输错-D参数顺序,生成失败率高,跳过。
关键依赖配置:两处不改必报错
第一步:打开pom.xml,找到<properties>标签块,确认里面只有这一行:
<java.version>17</java.version>
删掉所有其他java.version、maven.compiler.source、maven.compiler.target混写的残留配置——Spring Boot 3.5+已接管编译版本,多写反而冲突。
第二步:检查<dependencies>里有没有重复引入spring-webmvc或spring-boot-starter-tomcat。Spring Boot 3.5默认内嵌Tomcat,若手动加了spring-boot-starter-webflux依赖,会因WebMvcAutoConfiguration和WebFluxAutoConfiguration冲突导致启动失败,删掉webflux相关依赖即可。
第三步:在src/main/resources/application.yml里写死端口避免冲突:
server:
port: 8081
servlet:
context-path: /demo
这一步能避开IDEA调试时端口被占用、浏览器访问localhost:8080 404的问题。
运行前最后三件事
① 在IDEA右上角Run Configuration里,确认Use classpath of module选的是你的项目名(不是父pom),JRE选的是JDK 17,VM options清空——新手常在这里填-Dspring.profiles.active=dev,结果本地没配dev profile直接炸。
② 启动前右键pom.xml → Maven → Reload project,强制刷新依赖树。如果右侧Maven面板显示“spring-boot-starter-web”下面有红色波浪线,说明Maven没从阿里云镜像拉到包,立刻去~/.m2/settings.xml里补上阿里云mirror配置。
③ 第一次运行时,IDEA底部Terminal会输出“Tomcat started on port(s): 8081”,此时立刻打开浏览器访问http://localhost:8081/demo,看到Whitelabel Error Page不算失败——这是Spring Boot默认返回,说明服务已活;只要没报“Application run failed”或“Failed to start bean”,就成功了。


















