Awesome
HotSwapHelper - IntelliJ Plugin Based on HotSwapAgent for Hot Code Swapping
Usage Instructions
- Visit HotSwapHelper Releases and download the JDK corresponding to your version.
- After downloading, extract the files and configure IntelliJ IDEA to use the corresponding JDK.
- Once HotSwapHelper is installed, two icons will appear next to the Debug button in IDEA. Click "Debug with HotSwap" to perform hot swap.
- Check the logs for the appearance of
org.hotswap.agent.HotswapAgent
. If it appears, the agent has been successfully loaded. - After change code, need recompile the file or build the project(Ctrl+Shift+F9 or Ctrl+F9), then it will automatically hot swap.
Supported Frameworks
DO not use rebuild module or rebuild project it will reload all classes and slow. only rebuild file or build module or build project.
Compile code not work. no error no log
- make sure intellij setting `Build, Execution, Deployment/Debugger/HotSwap/Reload class after compilation is Always.
All plugins supported by HotSwapAgent are also supported by HotSwapHelper, including:
Spring Boot, Spring MVC, Hibernate, MyBatis, MyBatis-Plus, Log4j, etc. For more information, visit the HotSwapAgent GitHub page.
java.lang.NoClassDefFoundError: org/hotswap/agent/config/PluginManage
Edit Configuration -> Shorten Command Line -> Jar manifest
Open-Source Projects Tested Locally
Project Name | URL | Supported Features | Additional Notes |
---|---|---|---|
RuoYi | https://github.com/yangzongzhuan/RuoYi | Supports MyBatis XML hot-swapping and Java hot-swapping | |
Jeecg | https://github.com/jeecgboot/JeecgBoot | Supports MyBatis XML hot-swapping and Java hot-swapping |
Common Question?
Why need to download a jdk?
The jdk provided by HotSwapHelper Releases has package dcevm with hotswap folder into it, so you don't need to install dcevm separately. If you don't like it, you can always install by yourself from doc:HotSwapAgent GitHub page.
java17 startUp issue java.nio.channels.ReadableByteChannel sun.nio.ch.ChannelInputStream.ch accessible: module java.base does not "opens sun.nio.ch" to unnamed module @8297b3a
Update to plugin 1.0.2 version, it has fixed.
Encountering Issues?
Just issue on github or contact me following:
You can contact me by joining the QQ group: HotSwapHelper Plugin User Group
Or send an email to: gejun123456@gmail.com
ScreenShot