IDEA 下 SpringBoot 自动重启

时间:2022-07-23
本文章向大家介绍IDEA 下 SpringBoot 自动重启,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

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 是收费的,我就没有去测试它,有兴趣的可以去试试。