Bootstrap

IDEA启动项目慢问题处理

一、问题现象

多模块工程,启动模块为springboot项目,启动耗时半小时以上,其他同事启动时长在3分钟内。

二、问题排查

排查点1:idea内存

idea.vmoptions文件配置的idea最大堆内存-Xmx,同事为1024m,我的2048m,排除此原因。

排查点2:应用内存

启动类添加虚拟机参数-Xmx4096m,或更大值,不起作用。

排查点3:shorten command line

和同事对比此配置存在差异,整理了其作用如下:

classpath file

直接设置jvm类路径参数classpath,指明启动时到maven仓库加载依赖的jar包,同时将idea编译输出目录target/class也添加到classpath中。

jar manifest

在temp目录生成一个临时的jar文件,文件中指明启动类和classpath。

由于其作用就是指定启动类和类路径,该设置不影响启动时长。

排查点4:jstack排查

jstack输出线程栈信息,卡在createBean和创建数据库连接上,无太多帮助。

三、问题定位

以上全部排除后,在对比Idea配置差异时,发现我的idea有多个失效断点和条件断点,但这些断点都未生效,没有导致启动过程中程序暂停。类似下图。
在这里插入图片描述
随便试一试去掉断点,启动速度马上恢复正常。

;