1 <plugin> 2 <groupId>org.mortbay.jetty</groupId> 3 <artifactId>maven-jetty-plugin</artifactId> 4 <version>6.1.26</version> 5 <configuration> 6 <!-- 每2秒的間隔掃描一次,實現熱部署 --> 7 <scanIntervalSeconds>2</scanIntervalSeconds> 8 <contextPath>/</contextPath> 9 </configuration> 10 </plugin>
代碼如上面所示:每次保存代碼時 jetty插件會按 <reload>automatic</reload>默認設置自動reload,jetty重新啟動
要實現手動控制jetty的重新啟動設置如下:
1 <plugin> 2 <groupId>org.mortbay.jetty</groupId> 3 <artifactId>maven-jetty-plugin</artifactId> 4 <version>6.1.26</version> 5 <configuration> 6 <!-- 每2秒的間隔掃描一次,實現熱部署 --> 7 <scanIntervalSeconds>2</scanIntervalSeconds> 8 <reload>manual</reload> 9 <contextPath>/</contextPath> 10 </configuration> 11 </plugin>
注意:有的jetty插件版本不支持<reload></reload>,注意版本的選擇。
“手動重載”
從Jetty 6.2.0pre0版本起,添加了一個新的可用組件,用於控制web應用的重新部署。
配置參數:<reload>[manual|automatic]</reload>
當你設置成手動模式后,web應用不會自動的掃描和重部署。相反,用戶可以控制的Web應用時,通過鍵入”回車換行鍵”重載。當設置成自動模式時,將根據scanIntervalSeconds參數的設置不定時的掃描和自動重部署。你也能通過在命令行使用系統參數
-Djetty.reload 配置選擇重載的模式。
比如:"mvn -Djetty.reload=manual jetty:run" 將強制手動重載,不管pom.xml文件里如何配置。同理: "mvn -Djetty.reload=automatic -Djetty.scanIntervalSeconds=10 jetty:run" 每隔十秒中后台將重載一次,而不管pom.xml文件里如何配置。