点击上方蓝字关注我们
Java 的项目每次修改了源码以后想要测试都要停止服务,然后重新启动服务。虽然就是点几下鼠标的事情,多少还是比较麻烦的。能自动的还是自动的好。
在 Spring Boot 项目中,只要引入 Spring Boot Dev Tools 其实就可以了。我们可以通过 Spring 的脚手架去引入 Spring Boot Dev Tools,也可以通过 Maven 的方式去引入它。这里给出 Maven 引入的方式。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
以上就是 pom.xml 文件中引入的依赖。
除了要引入该依赖以外,还需要在插件的位置进行配置,配置如下:
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<fork>true</fork>
</configuration>
</plugin>
</plugins>
</build>
在上面的配置中,增加了 <configuration> 这个选项,Spring 脚手架生成的 pom.xml 文件中本来是没有这部分的。
如果是在 STS 或 Eclipse 下,只要引入 Spring Boot Dev Tools 就可以了。但是,如果是在 IDEA 下,除了要引入该依赖以外,还需要对 IDEA 进行简单的配置。
在菜单中选择 “Preferences...”,然后对其进行第一步的设置,如下图:
上图中选中 “Build project automatically”,点击 “Apply”。
然后按下 shift + option + command + / ,会出现如下图:
选择 “Registry”,继续进行设置,如下图:
勾选中 “complier.automake.allow.when.app.running” 即可。
经过以上的配置以后,在我们的 Spring Boot 项目中修改某个类文件的代码,观察一下 run 或 debug 的窗口,看看项目有没有自动重启。如果没有重启,那么可能是新引入了 pom 的依赖,需要重启项目,下次再修改了代码项目就会自动重启了。
Spring Boot Dev Tools 不能算是真正的热部署,JRebel 据说更好一些,因为 JRebel 是收费的,我就没有去测试它,有兴趣的可以去试试。
喜欢就点在看哦~
本文分享自微信公众号 - 码农UP2U(gh_3c91b47a82e0)。
如有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一起分享。
来源:oschina
链接:https://my.oschina.net/u/1867843/blog/4436690