IntelliJ IDEA失焦自动重启服务的解决方法

2023年 10月 7日 59.4k 0

IDEA 热部署特性

热部署,即应用正属于运行状态时,我们对应用源码进行了修改更新,在不重新启动应用的情况下,可以能够自动的把更新的内容重新进行编译并部署到服务器上,使修改立即生效。

现象

在使用 IntelliJ IDEA运行 SpringBoot 项目时,你可能会遇到一个令人困扰的问题:一旦你的鼠标指针离开当前IDE窗口,点击其他位置时, IDE 窗口会失去焦点,你的 SpringBoot 服务就会自动重启。尽管这并不一定妨碍你的项目运行,但是它无疑会打断你的开发流程,特别是当你在进行长时间的任务时。

解决方案

打开IDEA的Configuration

打开后,如下图所示:

On frame deactivation : 当失去焦点

该配置项便是配置IDEA失焦时的执行方案,IDEA共有三种策略:

  • Do nothing : 不做任何事 (一般推荐这个,因为失去焦点的几率太大)
  • Update resources : 失去焦点后,修改的resources文件都会立刻生效
  • Update classes and resources : 失去焦点后,修改的java ,resources文件都会立刻生效(与On update action中的Update classes and resources一样,也是运行模式修改的java文件不会生效,debug模式修改的java文件会立刻生效)

当我们勾选Update classes and resources,当IDEA失焦时,IDEA便会自动更新classes and resources文件,重新编译Spring Boot工程重启服务,因此,如果你不想使用IDEA默认的方案,修改IDEA失焦后的动作为Do nothing或Update resources,修改完成后,点击Apply或OK即可。

相关文章

JavaScript2024新功能:Object.groupBy、正则表达式v标志
PHP trim 函数对多字节字符的使用和限制
新函数 json_validate() 、randomizer 类扩展…20 个PHP 8.3 新特性全面解析
使用HTMX为WordPress增效:如何在不使用复杂框架的情况下增强平台功能
为React 19做准备:WordPress 6.6用户指南
如何删除WordPress中的所有评论

发布评论