Eclipse STS插件运行Spring服务卡顿CPU占用高求助
Eclipse STS + Spring 服务运行卡顿/CPU占用过高排查方案
一、JVM参数优化(针对STS和Spring服务)
- 调整Eclipse STS的JVM堆参数:找到STS安装目录下的
STS.ini文件,修改以下参数(适配32GB内存可适当调高):
G1GC适合大内存场景,能有效减少GC停顿;固定堆初始值与最大值可避免频繁内存扩容,充足的元空间能防止类加载溢出。-Xms4G -Xmx8G -XX:MaxMetaspaceSize=2G -XX:+UseG1GC -XX:ParallelGCThreads=8 -XX:ConcGCThreads=2 - Spring服务启动参数优化:在Run Configurations中给Spring Boot服务添加VM参数:
若未使用devtools自动重启功能,直接关闭可减少不必要的资源消耗。-Xmx4G -XX:+UseG1GC -Dspring.devtools.restart.enabled=false
二、STS插件与功能精简
- 禁用非必需STS插件:打开
Window > Preferences > Plug-ins > Installed,卸载或禁用你用不到的Spring相关插件(如Cloud、Batch等非核心组件),减少后台运行服务。 - 关闭自动构建与冗余验证:
- 取消勾选
Project > Build Automatically,改用手动构建(快捷键Ctrl+B); - 进入
Window > Preferences > Validation,取消不必要的验证项(如XML Schema、JSP Validation等),仅保留Java相关验证。
- 取消勾选
三、系统环境排查
- 清理后台占用进程:打开任务管理器,关闭杀毒软件实时扫描、闲置虚拟机等非必要高CPU进程。
- 更新JDK版本:使用最新稳定版JDK(如JDK17,适配Spring Boot3.x),旧版本JDK可能存在性能bug。
- 排除杀毒软件干扰:若为Windows系统,将STS工作目录、项目目录加入杀毒软件白名单,或临时关闭实时保护,避免频繁文件扫描导致卡顿。
四、项目本身优化
- 缩小Bean加载范围:检查Spring Boot项目的
@ComponentScan注解范围,避免加载非必需Bean;给非核心Bean添加@Lazy注解实现延迟加载。 - 关闭非必需功能端点:若未使用Spring Boot Actuator,在
application.properties中直接禁用:management.endpoints.enabled-by-default=false - 清理冗余依赖:用
mvn dependency:tree(Maven)或Gradle依赖分析工具,移除项目中未使用的冗余依赖,减少类加载数量。
内容的提问来源于stack exchange,提问作者Siva
相关产品推荐
相关产品推荐

