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文件里如何配置。