在企业级 Java 开发这条路上,Eclipse 是个绕不开的老伙计。虽然这几年 IDEA 的呼声越来越高,但很多公司的老项目、银行证券类系统、教学环境,甚至一些嵌入式团队配套的后台管理端,依然跑在 Eclipse 上。而 Spring Boot 作为当前 Java 后端开发的主流框架,几乎成了每个后端岗位的必备技能。把这两个东西凑在一起,就是这篇要聊的正事:怎么在 Eclipse 里从零搭出一套能跑起来的 Spring Boot 开发环境,再顺顺利利创建出第一个可启动的项目。这篇内容适合刚入行的 Java 新人、从 IDEA 转过来需要适配公司技术栈的朋友,还有那些接手了老项目、发现同事还在用 Eclipse 的同学。我会把版本选型、环境变量、插件、项目创建三条路径、pom 配置、启动调试这些环节都掰开讲,踩过的坑也一并摆出来。
1. 为什么在 IDEA 满天飞的时代还选 Eclipse 搭 Spring Boot 环境
先说个实在话,如果你是完全自由的个人开发者,追求极致编码体验,那 IDEA 确实更顺手。但现实里很多场景不是你能选的。我接过一个维护了七八年的后台系统,整个团队统一用 Eclipse 的 Java EE 版本,源码里还留着.project、.classpath这些 Eclipse 专属文件,换编辑器光是把这些配置对齐就得折腾大半天。还有些单位出于授权合规考虑,统一采购的是开源免费的开发工具,Eclipse 本身就是这个定位,天然适配这类环境。
另一个被低估的点是 Eclipse 的插件生态在特定领域依然很强。比如你想看类图,Eclipse 装个 ObjectAid 或者用自带的插件就能直接生成;想分析内存泄漏,MAT 插件是标配;想离线安装插件,Eclipse 的 dropins 目录丢文件就完事,比一些工具省心。所以搭一套 Eclipse 上的 Spring Boot 环境,不是怀旧,而是解决真实存在的适配问题。
1.1 版本选型先定调:JDK、Eclipse、Spring Boot 三者的兼容底线
这一步是最容易被忽略、也最容易在后期爆雷的地方。很多人是先把 Eclipse 下载好,然后随手找了个 Spring Boot 教程就开干,结果项目一跑就报java.lang.UnsupportedClassVersionError,或者编译级别不匹配。根源就是三者版本没对齐。
先把结论摆出来,这是一套经得起验证的组合逻辑:
- JDK 8 + Spring Boot 2.x:最稳的经典组合,大量老项目还在用。Spring Boot 2.7.x 是 2.x 系列的收尾版本,支持 JDK 8 到 17,兼容面最广。
- JDK 17 + Spring Boot 3.x:新项目的首选。注意 Spring Boot 3.x 强制要求 JDK 17 起步,而且把
javax.*包名整体换成了jakarta.*,老代码直接搬过来会编译不过。 - JDK 11 + Spring Boot 2.6/2.7:中间过渡方案,很多公司内网环境卡在 11 这个版本。
Eclipse 这边则要认准版本代号,Eclipse 2021-09 之后的版本对 JDK 17 支持才比较完善,更早的版本在语法提示上会出各种小毛病。表格里我列一下常见搭配,直接抄作业就行:
| JDK 版本 | Spring Boot 版本 | 推荐 Eclipse 版本 | 备注 |
|---|---|---|---|
| JDK 8 | 2.7.18 | 2021-06 及以上 | 老项目维护首选 |
| JDK 11 | 2.7.18 | 2022-03 及以上 | 内网过渡环境 |
| JDK 17 | 3.2.x | 2023-09 及以上 | 新项目推荐 |
| JDK 21 | 3.3.x | 2024-06 及以上 | 尝鲜可上 |
注意:如果公司内网 Spring Boot 仓库里只有旧版本,别硬上 3.x。我见过有人本地用 3.x 写完,部署到内网服务器上因为拉不到
spring-boot-starter-parent:3.x直接卡死,最后全量降级回 2.7。
选型的核心逻辑是"向下兼容优先于向上尝鲜"。你要保证的不只是本地能跑,还要保证和团队、和部署环境一致。所以动手前先问清楚:团队用哪个 JDK?内网 Maven 仓库有哪些 Spring Boot 版本?这两个问题搞明白,选型基本就定了。
1.2 Eclipse 安装包怎么选:从下载到解压的实操细节
Eclipse 官网的下载页面对新手其实挺不友好的,一堆版本名看得人发懵。核心就记一个原则:搭 Spring Boot 开发环境,直接选Eclipse IDE for Enterprise Java and Web Developers,也就是常说的 Java EE 版本。这个版本自带了 Web、XML、Maven 等一堆企业开发要用的工具集,省得你后面一个个补插件。
安装方式上,Windows 平台有两种:一种是下载 Installer 在线安装,另一种是下载 zip 压缩包解压即用。我个人强烈推荐后者,zip 包拿来直接用,不写注册表,换电脑直接拷走,多版本共存也方便。你可以在 D 盘建个dev-tools目录,把不同版本的 Eclipse 分别解压到eclipse-2023-09、eclipse-2024-06这样的子目录里,需要哪个就启动哪个。
启动前有个小细节:Eclipse 默认会去读系统环境变量里的 JDK,但如果你的机器装了多个 JDK,就容易用错。所以更稳妥的做法是在 Eclipse 安装目录下建一个eclipse.ini,在里面显式指定 vm 路径,比如:
-vm D:/dev-tools/jdk-17/bin/javaw.exe这行的位置有讲究,必须放在-vmargs之前,否则不生效。这个坑我当年调了半小时才发现,-vm参数放错位置,Eclipse 会默默忽略它,然后拿系统默认 JDK 启动,后面编译级别全乱套。
还有个被频繁搜到的需求是 Eclipse 汉化。实话说,做开发不太建议汉化,因为报错信息、API 文档、社区问答全是英文,汉化之后反而对不上号。如果你确实需要,可以装 Babel 语言包,同样支持离线方式:下载对应版本的 Babel 压缩包,解压后把plugins和features目录里的内容拷到 Eclipse 对应目录,重启就生效。这种离线玩法在内网环境里特别实用,因为很多公司不允许开发机随意连外网。
2. Eclipse 环境初始化:那些"装完就报错"的前置坑
环境初始化这一步,说难不难,说简单也真能坑人。我见过太多新手,Eclipse 装完、项目也建了,一运行就一堆红叉,然后到处问"为什么我的 Spring Boot 跑不起来"。其实十有八九是初始化没做干净。这一章我按顺序把 JDK、编码、Maven 这几件事捋清楚,每一步都给出为什么要这么做的理由。
2.1 JDK 安装与环境变量配置的关键动作
JDK 本身安装没什么技术含量,一路下一步就行,但有个流传很广的误区要澄清:网上有些老教程建议在PATH里配置CLASSPATH变量,还让加一堆.;%JAVA_HOME%\lib\dt.jar之类的。这套配置在 JDK 8 之后基本是多余的,现代 JDK 不需要手动配CLASSPATH,配了反而可能引入意外的类加载顺序问题。所以只配两个就够:JAVA_HOME指向 JDK 根目录,PATH里追加%JAVA_HOME%\bin。
配置完验证一下,开命令行敲java -version和javac -version,两个版本号必须一致。如果你发现java是 8、javac是 17,说明 PATH 里混进了别的 JDK 的 bin 目录,得把顺序调对。这种"java 和 javac 版本不一致"的问题,会让 Eclipse 编译用一个版本、运行用另一个版本,排查起来非常绕。
在 Eclipse 里还要再确认一次。打开Window > Preferences > Java > Installed JREs,看看列出来的是不是你想用的那个 JDK。如果里面是个 JRE 而不是 JDK,建议删掉重新添加 JDK 目录,因为 JRE 里没有编译器和调试符号,做开发会缺东西。这一层是"配置的配置",很多人忘了这步,结果项目全局编译级别被锁死在默认值上。
2.2 编码格式、编译器合规级别两处必改配置
编码是中文开发者最容易踩的坑,没有之一。Eclipse 默认的工作空间编码在英文系统下往往是 ISO-8859-1 或者 GBK,而你写 Spring Boot 项目时,application.yml、messages.properties里的中文,还有控制台输出,全靠 UTF-8。编码不对,轻则中文乱码,重则 YAML 解析直接报错。
改的位置在Window > Preferences > General > Workspace,把Text file encoding改成 UTF-8。同时把General > Editors > Text Editors > Spelling里那个拼写检查关掉,不然代码里的变量名动不动被划红线,看着心烦。另外 JSP 文件(如果你混着写)的编码要单独在Web > JSP Files里设成 UTF-8。
编译器合规级别则对应你的 JDK 版本。位置在Java > Compiler,把Compiler compliance level设成和 JDK 一致的版本。比如你用 JDK 17,这里就选 17。这里如果选错了,会出现两种典型现象:选低了,JDK 17 的新语法(比如记录类、文本块)报语法错误;选高了但 JDK 是 8,编译直接报 "compliance level 不受支持"。这个设置和项目级别的设置要区分开,后面讲到项目属性时会再提。
2.3 插件安装:在线与离线两条腿走路
Eclipse 装 Spring Boot 支持,主流是装 STS 插件。名字叫 Spring Tools,它提供 Spring Starter Project 向导、配置文件提示、运行面板等一堆顺手的工具。在线安装走Help > Eclipse Marketplace,搜 Spring Tools,点安装重启即可。
但内网环境或者网络不稳的时候,在线安装经常卡在 "Calculating requirements" 就不动了。这时候就得用离线安装。离线包的来源是 Eclipse 官方更新站点,下载对应版本的 zip 归档,然后走Help > Install New Software > Add > Archive,选中 zip 文件安装。另一种更粗暴的方式是把插件解压后直接丢进 Eclipse 的dropins目录,重启自动识别,这种方式对某些插件管用,但 STS 这种依赖较多的,还是走 Install New Software 更稳。
不管在线还是离线,装完记得验证:新建项目时如果能看到Spring Starter Project这个选项,就说明成功了。另外提醒一句,STS 插件版本和 Eclipse 版本要匹配,跨大版本装容易出问题,比如在很老的 Eclipse 上装最新 STS,可能启动就报插件依赖缺失。
实操心得:如果你的 Eclipse 装了太多插件导致启动变慢,可以在
Window > Preferences > General > Startup and Shutdown里把用不到的功能项关掉,启动速度能有肉眼可见的提升。
3. 创建 Spring Boot 项目的三条路径与实操对比
环境备好了,接下来就是建项目。这里我把三条常用路径都讲一遍,你可以根据自己的网络条件、团队习惯和对工具的熟悉程度来挑。三条路径各有各的适用场景,没有绝对的好坏。
3.1 路径一:Spring Initializr 网页生成再导入
这是最通用、也最推荐新手先走一遍的方式。因为你在浏览器里勾选依赖的时候,能直观看到 Spring Boot 生态里有哪些 starter,相当于做一次生态科普。
操作流程:打开 Spring 官方的 Initializr 页面,按顺序选四样东西——项目类型选 Maven、语言选 Java、Spring Boot 版本按前面聊的兼容性选、然后填 Group 和 Artifact。Group 一般用公司域名倒写,比如com.example;Artifact 是项目名,全小写加连字符。接着在右侧 Dependencies 里勾你需要的,最基础的至少勾一个Spring Web。
有个容易忽略的细节是打包方式(Packaging),默认 Jar。Spring Boot 项目绝大多数用 Jar,因为内嵌了 Tomcat,打进 Jar 里直接java -jar就能跑。只有极少数需要部署到外部容器(比如老的 WebLogic)才用 War。选 Jar 就对了。
生成之后你会得到一个 zip,解压后用 Eclipse 的File > Import > Maven > Existing Maven Projects导入。导入时那个 Disable Maven nature 的复选框别勾,勾了项目就不是 Maven 项目了。导入完成后,Eclipse 会开始下载依赖,第一次会比较慢,耐心等进度条走完,红叉自然消失。
3.2 路径二:STS 插件直接新建 Spring Starter Project
装好 STS 插件后,File > New > Spring Starter Project,接下来的界面和网页版 Initializr 很像,本质上是插件内嵌了同样的服务。这种方式的好处是不用离开 Eclipse,一步到位,生成完直接就在工作空间里。
但它有个前提:你的机器能访问 Spring 的初始化服务。有些公司网络做了限制,插件请求不到那个服务,就会一直转圈然后报错。这种情况下就退回路径一,用浏览器(如果浏览器能访问)或者让能访问的同事帮忙生成。另外离线状态下也可以用手工方式,也就是路径三。
STS 向导里还有一个选项叫Use default location,如果你有统一的代码目录,建议取消勾选,指定到自己的工作区路径,别一股脑全塞进 Eclipse 默认的 workspace 里。统一目录便于后面用 Git 管理、用命令行构建,工程化习惯早点建立没坏处。
3.3 路径三:手工改造 Maven 项目并手写 pom.xml
这条路径最能锻炼人对 Spring Boot 结构的理解,也最适合完全没有外网、连生成页面都打不开的环境。做法是:先File > New > Maven Project,勾上Create a simple project,快速建一个空的 Maven 工程,然后手动编辑pom.xml把 Spring Boot 的父依赖和 starter 加上,最后自己补启动类。
手写 pom 的时候,父依赖是关键:
<parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.7.18</version> <relativePath/> </parent>这个父依赖帮你管理了几乎所有常用库的版本,所以你在引入 starter 时基本不用写版本号,这就是 Spring Boot "约定优于配置" 的体现。如果你不想或不能用父依赖(比如项目本身已经继承了别的父 pom),那就改成在dependencyManagement里导入spring-boot-dependencies的 BOM,效果类似,只是要自己管插件配置。
三条路径的对比我整理成一个表,按场景选就行:
| 路径 | 适用场景 | 优点 | 缺点 |
|---|---|---|---|
| Initializr 网页 | 有外网、新手学习 | 直观、依赖一目了然 | 需切浏览器 |
| STS 插件新建 | 常态开发 | 全在 IDE 内完成 | 依赖网络服务 |
| 手工 Maven 改造 | 内网、离线 | 完全可控、理解深 | 步骤多、易漏配置 |
4. pom.xml 与启动类的核心细节拆解
项目建出来只是骨架,真正决定它能不能跑、跑得顺不顺的,是 pom 配置和启动类这两块。这一章我把里面的关键点逐个拆开,尤其是那些"教程里没讲但实际会踩"的地方。
4.1 starter 依赖怎么选:别一股脑全勾
Spring Boot 的精髓是把一堆相关依赖打包成一个 starter。比如spring-boot-starter-web里其实包含了 Spring MVC、内嵌 Tomcat、Jackson 等一串东西,你引一个就等于引了一打。理解了这一点,选依赖就不会盲目。
常见 starter 和作用对照如下:
| starter | 作用 | 典型场景 |
|---|---|---|
| spring-boot-starter-web | Web + 内嵌 Tomcat | 写接口、做后台 |
| spring-boot-starter-data-jpa | JPA + Hibernate | 操作数据库 |
| spring-boot-starter-thymeleaf | 模板引擎 | 服务端渲染页面 |
| spring-boot-starter-test | 测试框架 | 单元测试 |
| spring-boot-starter-data-redis | Redis 集成 | 缓存、会话 |
新手常见的问题是"贪多",把所有能勾的都勾上。结果项目一启动,因为某个 starter 需要额外配置(比如 JPA 没配数据源),直接启动失败。我的建议是:初始只勾 Web,先跑通 Hello World,再按需求逐个加。这样每加一个都清楚它带来了什么变化,出问题也好定位。
依赖冲突也是绕不开的话题。当你引入多个 starter,它们各自依赖的第三方库版本可能打架。Eclipse 里可以用Dependency Hierarchy视图看依赖树,把冲突的依赖找出来,用<exclusions>排除掉多余的那个。步骤是:打开 pom,切到 Dependency Hierarchy 标签,找到带omitted字样的节点,右键 Exclude Maven Artifact 即可。
4.2 启动类与 @SpringBootApplication 背后的自动装配
启动类就三行代码,但每一行都有讲究:
@SpringBootApplication public class DemoApplication { public static void main(String[] args) { SpringApplication.run(DemoApplication.class, args); } }@SpringBootApplication是个组合注解,拆开看等于三个:@SpringBootConfiguration(标记为配置类)、@EnableAutoConfiguration(开启自动装配)、@ComponentScan(扫描当前包及子包下的组件)。自动装配是 Spring Boot 最核心的能力,它靠spring.factories(3.x 之后改成AutoConfiguration.imports)文件,在一堆条件注解的约束下,决定哪些配置类生效。比如你引了 web starter,它检测到类路径里有DispatcherServlet,就把 Web 相关的自动配置全激活了。
启动类的位置有个隐形规则:它必须放在所有业务代码包的最外层。因为@ComponentScan默认只扫启动类所在包及其子包,你把启动类放到com.example.demo.controller下面,那 service、dao 全都扫不到,启动后接口 404。这个错我曾经帮人排查了一晚上,最后发现就是启动类挪了位置。
主方法里的SpringApplication.run返回的是ConfigurableApplicationContext,早期教程喜欢写ApplicationContext ctx = SpringApplication.run(...),其实规范写法是SpringApplication.run(DemoApplication.class, args),不需要接收返回值。另外主类最好放在独立包下,别和其他配置类混在一起,结构清晰。
4.3 application.yml 与几个马上能用的配置项
配置文件优先用application.yml,比.properties层级清晰。Eclipse 里写 yml 需要装 YEdit 之类的插件才有提示和格式校验,否则缩进错了它只会在启动时报解析异常。YAML 对缩进极其敏感,两个空格是层级,用 Tab 会报错,这是血的教训。
一个最小可用的配置长这样:
server: port: 8080 servlet: context-path: /demo spring: application: name: demo-appserver.port改端口这个最常用,本地起多个项目时避免冲突。context-path给应用加统一前缀,接口访问就变成http://localhost:8080/demo/xxx。spring.application.name看着没用,其实后面接入注册中心、链路追踪时会用到,早点填上有备无患。
配置文件的加载顺序也值得知道:Spring Boot 会依次读application.yml、application-{profile}.yml,profile 的配置优先级更高。所以你可以把通用配置放主文件,把环境相关的(数据库地址、Redis 地址)放application-dev.yml、application-prod.yml,再用spring.profiles.active切换。这样本地连本地库、部署连生产库,一份代码走天下。
日志配置也顺手提一句,默认控制台已经能打日志了。想调级别加一行logging.level.com.example=debug就行,不用额外引 logback 配置文件,除非你要做日志分文件、按天切割这种精细控制。
5. 运行调试与打包:Eclipse 里的操作手感
项目能建、配置也对,接下来就是让它真正跑起来。Eclipse 里运行 Spring Boot 项目和普通 Java 程序略有不同,调试和热部署也有自己的注意事项。
5.1 启动、断点调试与 DevTools 热部署
运行最简单的方式是右键启动类Run As > Java Application,控制台打出那朵著名的 Spring 图案 banner 和Started xxxApplication in x seconds就说明起来了。有时候你会看到控制台还提示 "LiveReload server is running",那是因为你引了 DevTools,它带了一个实时刷新功能。
断点调试和普通 Java 一样,在代码行号旁边双击加断点,然后用Debug As > Java Application启动。这里有个 Eclipse 相比其他工具的优势:调试时可以直接在Variables视图里修改变量值,或者对表达式做Inspect,排查那些"诡异分支进了不该进的逻辑"特别好用。
热部署靠spring-boot-devtools依赖实现,加在 pom 里:
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency>加完之后,改 Java 代码保存,DevTools 会检测到 classpath 变化自动重启应用。但注意,Eclipse 默认不会自动编译,所以有时候你改了代码却看不到重启,需要手动Project > Build Automatically打开自动编译,或者 Ctrl+S 后按一下 Ctrl+B。这个"改了代码不重启"的现象困扰过很多人,根子就在 Eclipse 的自动编译开关上。
注意:DevTools 的自动重启只对 classpath 下的变更有效。你改
application.yml一般不会触发重启,改 Java 类才会。另外,正式打包时记得把optional保持为 true,避免 DevTools 被打进生产包。
5.2 打包成 Jar 与命令行运行
开发调通了,就要考虑打包。Eclipse 里对着项目右键Run As > Maven build...,在 Goals 里填clean package,点 Run 就行。第一次会下载插件,慢一点正常。构建成功后,target 目录下会生成xxx-0.0.1-SNAPSHOT.jar。
这个 jar 是"可执行胖包",内嵌了 Tomcat 和所有依赖,拷到任何装了 JDK 的机器上,执行:
java -jar demo-0.0.1-SNAPSHOT.jar就能跑。想换端口临时加参数:java -jar demo.jar --server.port=9090。想指定 profile:java -jar demo.jar --spring.profiles.active=prod。命令行参数优先级高于配置文件,这是做临时调整的利器。
打包时如果报 "Unable to find main class",八成是启动类位置不对或者 pom 里没配spring-boot-maven-plugin。用 Initializr 或 STS 生成的项目默认会带这个插件,手工建的项目要自己补上:
<build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build>这个插件负责把依赖打进 jar 并设置正确的 Main-Class,缺了它打出来的就是普通 jar,跑不起来。
6. 常见问题与排查技巧实录
下面这些是我这些年实际遇到、也被别人问得最多的报错,整理成速查表,遇到时对号入座能省不少时间。
6.1 启动即报错的高频问题速查表
| 现象 | 可能原因 | 解决方式 |
|---|---|---|
| UnsupportedClassVersionError | JDK 版本低于编译版本 | 对齐 JDK 与编译器级别 |
| 启动类找不到主方法 | 无 main 或没有 spring-boot 插件 | 检查启动类与 pom 插件 |
| 端口 8080 被占用 | 已有进程占用 | 改 server.port 或结束进程 |
| 接口全 404 | 启动类位置太深 | 把启动类上移到最外层包 |
| YAML 解析失败 | 缩进用了 Tab 或中文冒号 | 全用空格、英文符号 |
| 依赖飘红 | 未更新 Maven 或仓库缺包 | 右键 Maven > Update Project |
其中"接口 404"和"依赖飘红"是新人问得最多的两个。前者基本就是包扫描路径问题,后者多半是本地仓库没下全或者 settings.xml 里的镜像配置有问题。Eclipse 里的 Maven 要单独确认一下:Window > Preferences > Maven > User Settings,指到你自己的settings.xml,别用默认的,默认的经常连不上内网私服。
6.2 Spring Boot 版本太高的降级操作
热词里 "springboot版本太高" 这个搜索很典型。症状通常是启动时报某个自动配置类找不到,或者提示不支持当前 JDK。原因要么是 JDK 太老配了新框架,要么是引用了只兼容旧版本的第三方库。
降级操作分两步。第一步改父依赖版本,把spring-boot-starter-parent的 version 从 3.x 改回 2.7.x。第二步清掉本地仓库里对应的旧缓存,因为有时候降级后 Maven 仍然用着之前下好的新版本 jar,导致行为诡异。做法是去本地仓库~/.m2/repository/org/springframework/boot下删掉对应版本目录,再 Update Project 重新拉。
实操心得:降级前务必先确认
javax和jakarta的问题。Spring Boot 3.x 用的是jakarta.*,2.x 用的是javax.*。如果你代码里 import 的是jakarta.servlet.*,降级到 2.x 会全部编译不过,得批量替换包名。反过来升级也一样,这个包名切换是大版本升级最耗时的环节。
6.3 几个能省时间的独家避坑技巧
第一,学会看Conditions Evaluation Report。启动时加--debug参数,控制台会详细打印每个自动配置类的生效与否以及原因,排查"为什么某个功能没自动配好"时,这比瞎猜高效得多。
第二,善用 Eclipse 的Open Type(Ctrl+Shift+T)和Open Resource(Ctrl+Shift+R)。找类、找配置文件秒开,尤其是接手陌生项目时,比在目录树里一层层点快得多。
第三,碰到eclipse 找不到或无法加载主类这类问题,先检查Project > Clean一下,再确认Build Path里的输出目录是不是被改乱了。Eclipse 有时候抽风会把编译输出路径重置,clean 一下能解决很大一部分玄学报错。
第四,团队协作时统一 Eclipse 的代码格式化模板。Java > Code Style > Formatter导入团队的 xml 模板,否则每个人格式化出来的代码空格、换行都不一样,提交代码时 diff 里全是格式变动,真正的业务改动反而被淹没。
第五,本地起多个 Spring Boot 项目做联调时,端口规划要提前做。我一般是主服务 8080、子服务从 8081 往后排,Redis、MySQL 这些中间件端口也记在项目的 README 里,别人接手不用一个个问。
说实话,Eclipse 搭 Spring Boot 这套流程,第一次走确实会磕磕绊绊,版本对齐、编码设置、启动类位置这几关几乎人人都会卡一次。但一旦环境配顺了,日常开发其实很稳,尤其是老项目维护场景,Eclipse 那套成熟的调试和插件体系是真能提效。我自己的习惯是每配好一套环境就写个简短的配置清单存在项目根目录,下次换机器或者带新人,照着清单二十分钟就能复刻一套。这个清单里除了版本组合,还会记上eclipse.ini的 vm 配置、编码设置项、以及那个容易被忽略的自动编译开关位置,省得每次重新摸索。