IDEA 中使用教程:https://zeroturnaround.com/so...
Maven工程中使用JRebel:http://manuals.zeroturnaround...html
File -> Settings -> Plugins -> Browse repositories 中 搜索 JRebel
,安裝 JRebel for IntelliJ
插件便可。java
破解能夠參考這篇文章:https://www.jianshu.com/p/c50...web
官方文檔: https://manuals.zeroturnaroun...
JRebel Maven插件的目的是在Maven構建期間爲您的項目生成rebel.xml
文件。spring
對於Maven項目 特別是在多模塊項目的狀況下 使用JRebel Maven插件生成rebel.xml配置文件很方便。將如下代碼段添加到您的父級pom.xml
。該rebel.xml配置文件能夠在你的Maven項目的每一個單獨的子模塊產生。app
<plugin> <groupId>org.zeroturnaround</groupId> <artifactId>jrebel-maven-plugin</artifactId> <version>1.1.8</version> <configuration> <!-- 將配置的資源目錄也添加到rebel.xml中 --> <addResourcesDirToRebelXml>true</addResourcesDirToRebelXml> <!--若是設置爲true,則生成的rebel.xml將在構建期間在控制檯中打印出來,能夠當即看到生成的內容。默認爲false--> <showGenerated>true</showGenerated> <!-- 每次都生成新的rebel.xml。若是爲false,只在rebel.xml和pom.xml的時間戳不相同的時候,從新生成rebel.xml。默認爲false --> <!--<alwaysGenerate>true</alwaysGenerate>--> <!-- 在單個項目中處理多個模塊時,您能夠選擇跳過爲特定模塊生成rebel.xml。 只需將如下內容添加到他們的pom.xml中便可 --> <!--<skip>true</skip>--> <!-- 若是工程師本身自定義的package,則須要主動設置爲 jar 或者 war --> <!--<packaging>war</packaging>--> </configuration> <executions> <execution> <id>generate-rebel-xml</id> <phase>process-resources</phase> <goals> <goal>generate</goal> </goals> </execution> </executions> </plugin>
配置結束後執行命令mvn jrebel:generate
webapp
啓動時使用 JRebel 按鈕來Run和Debug,會自動在 resources 文件夾中生成rebel.xml
文件,文件中配置了Jrebel熱加載的時候須要追蹤的文件路徑及web配置。好比本身須要主動加入 shop-model 模塊
的路徑maven
<?xml version="1.0" encoding="UTF-8"?> <!-- This is the JRebel configuration file. It maps the running application to your IDE workspace, enabling JRebel reloading for this project. Refer to https://manuals.zeroturnaround.com/jrebel/standalone/config.html for more information. --> <application generated-by="intellij" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.zeroturnaround.com" xsi:schemaLocation="http://www.zeroturnaround.com http://update.zeroturnaround.com/jrebel/rebel-2_1.xsd"> <classpath> <dir name="C:/workspace/song/shop/shop-web/target/classes"> </dir> <dir name="C:/workspace/song/shop/shop-model/target/classes"> </dir> </classpath> <web> <link target="/"> <dir name="C:/workspace/song/shop/shop-web/src/main/webapp"> </dir> </link> </web> </application>
若是不作下面的配置,則須要手動編譯纔會觸發熱部署(spring boot devtools同樣的問題):ui
project automatically
勾選上:File -> Settings -> Build,… -> Compiler ,勾選 Build project automatically ctrl + shift + alt + /
快捷鍵選擇 Registry...
,勾選 compiler.automake.allow.when.app.running
通常修改java文件後,會自動編譯的。可是通常本身主動觸發編譯會更可控一些:this
Ctrl + Shift + F9
編譯當前文件 或者 右鍵-> Recompile ....javaspa