springboot 下的兩熱部署springloaded,spring-boot-devtools
總體來說,使用springloaded更方便,如果修改了配置文件和模板文件重新啓動一下就好了,畢竟改類的可能性多些!
重要提示:idea 2016.3不會自動編譯修改過的文件,所有完全自動是不可能的,所謂的熱部署不是自動部署,還是需要手動的!
spring-boot-devtools
配置方法
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<optional>true</optional>
</dependency>
每次改動都要自動重起,好處是可以加載全部文件。springloaded 不用每次都重起,但無法加載配置文件,ftl等
springloaded
- idea用run 或者 debug運行就行了,注意下面配置
<!-- 這個是在intelli idea 中配置的 -->
1.springloaded 熱部署class 重要的必須在VM參數配置,否則不起作用!!!!
這個包不會自動下載,要手動去github上下載
2.配置方法:在 VM OPTION 裏寫上:(注意路徑中不能有空格)
-javaagent:/Users/jiangtao/Dropbox/JiangtaoDev/springloaded-1.2.6.RELEASE.jar -noverify
3.!!!!! run 和 debug都能用!切記:改完後要重新編譯改過的類(1.cmd+shift+F9,或者右鍵選擇重新編譯)!!!
@SEE http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#howto-reload-springloaded-gradle-and-intellij-idea
- mvn 運行要注意起tomcat
<!--這個plugin是給mvn用的
mvn spring-boot:run -->
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>springloaded</artifactId>
<version>1.2.6.RELEASE</version>
</dependency>
</dependencies>
</plugin>
springloaded 的優勢是修改class類不用重新啓動,非常快速。
不好的地方是無法加載配置文件和ftl等模板文件