Intellij IDEA关闭热部署(Hot swap)

本文讲述了如何在IntelliJIDEA中配置Tomcat以减少热部署对调试的影响,包括关闭OnUpdateaction和Onframeorbreakpoint选项,调整HotSwap设置,以及使用外部工具窗口和禁用自动构建等方法。
摘要由CSDN通过智能技术生成

场景:为了提高调试时的编译效率,经常在配置tomcat时,会开启热部署。

问题:当鼠标焦点离开idea,就会触发热部署!!但是经常要切换到浏览器或者其他地方去使用,这时就会触发热部署(debug时经常多个hot swap后台任务,导致有时候打了断点也没有效果。)

解决方案:

  1. 配置 Tomcat 部署方式
    • 在 IntelliJ IDEA 中,打开 Tomcat 服务器的配置。
    • 在 "Deployment" 标签页中,确保 "On 'Update' action" 和 "On frame or breakpoint" 选项未被选中。这样,IDEA 就不会在每次更新项目或进入断点时自动触发热部署。
  2. 调整 HotSwap 设置
    • 回到 IntelliJ IDEA 的设置窗口。
    • 选择 Build, Execution, Deployment -> Debugger -> HotSwap
    • 确保 "Enable HotSwap" 选项是选中的,但你可以考虑取消选中 "Enable on frame or breakpoint" 来避免在断点处触发 HotSwap。
  3. 使用外部工具窗口
    • 如果你经常需要切换到浏览器或其他应用程序,考虑使用 IntelliJ IDEA 的外部工具窗口(External Tools Window)来运行浏览器,这样焦点就不会离开 IDEA 的主窗口,从而避免触发不必要的 HotSwap。
  4. 禁用自动构建
    • IntelliJ IDEA 默认会在项目文件发生变化时自动构建项目。你可以通过以下步骤禁用自动构建:
      • 选择 File -> Settings -> Build, Execution, Deployment -> Compiler
      • 取消选中 "Build project automatically" 选项。
    • 这样,只有当你手动触发构建时(例如通过点击 "Build" 菜单中的 "Build Project"),IDEA 才会编译项目。
  5. 手动触发部署
    • 当你完成代码更改后,可以手动触发部署,而不是依赖自动部署。这可以通过 IntelliJ IDEA 的 "Update Classes and Resources" 功能来实现,它允许你选择性地更新 Tomcat 服务器上的类和资源。
  6. 使用更稳定的调试技术
    • 如果 HotSwap 的不稳定性持续影响你的调试体验,你可以考虑使用更传统的调试技术,如使用远程调试(Remote Debugging)功能。这样,你可以将应用程序部署到 Tomcat 服务器上,并使用 IntelliJ IDEA 远程连接到该服务器进行调试,避免在本地环境中触发 HotSwap。

以下截图是本人关闭热部署(Hot Swap)过程截图:

③Ctrl+Shift+Alt +  /

  • 9
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
IntelliJ IDEA 是一款受欢迎的Java集成开发环境(IDE),提供了许多有用的插件和功能。其中之一是JRebel插件,它可以实现对静态资源文件的热部署,包括JavaScript和CSS文件等。 JRebel是一款基于Java虚拟机(JVM)的热部署工具,可以在不重新启动应用程序的情况下,对代码和静态资源文件进行修改和重新加载。这意味着,你可以在修改JavaScript或CSS文件后,立即在浏览器中看到变化,而不需要手动刷新页面或重新启动应用。 在使用IntelliJ IDEA时,你可以通过以下步骤来配置和使用JRebel插件: 1. 首先,确保你已经安装了JRebel插件。你可以在IntelliJ IDEA的插件市场中搜索JRebel,并进行安装。 2. 安装完成后,打开IntelliJ IDEA的设置(Preferences)窗口。在左侧的面板中,选择JRebel选项。 3.在JRebel设置页面中,你可以配置JRebel的路径和其他选项。根据你的需求进行相应的设置。 4. 接下来,你需要在你的项目中启用JRebel。这可以通过修改项目的配置文件或通过IntelliJ IDEA的界面来完成。 5. 一旦你启用了JRebel,它将自动监测你的项目中的静态资源文件的变化,并在变化发生时进行热部署。这意味着,你可以立即在浏览器中看到你对JavaScript或CSS文件所做的修改。 总而言之,IntelliJ IDEA的JRebel插件是一种强大的热部署工具,可以提高开发效率。它可以实现对静态资源文件的即时修改和重新加载,让你的开发过程更加高效和流畅。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值