springboot-devtools整合避坑

第一步:导入依赖

导入时可以放在maven父工程,也可以放在当前maven工程里。

       <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
        </dependency>

一旦被引用后启动类上会显示devtools的标识


图片.png

接着需要配置maven工程pom中的plugin

<build>
    <plugins>
      <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <configuration>
          <fork>true</fork><!-- 如果没有该配置,热部署的devtools不生效 -->
        </configuration>
      </plugin>
    </plugins>
</build>
第二步:idea的配置

勾选自动构建这一项File -> Settings -> Compiler,勾选 Build Project automatically


图片.png

此时还不能生效,也就是修改类文件不会自动编译,所以继续配置idea ,按快捷键Ctrl+Shift+Alt+/,选择Registry...


图片.png

然后,勾选 compiler.automake.allow.when.app.running 即可


图片.png

哦,修正一下,修改过的在最上面显示
图片.png
第三步:启动项目测试

定义一个api方法

图片.png

发起请求后当前输出


图片.png

修改该类文件


图片.png

修改完此时idea控制台不会有任何反应,先清空控制台,然后ctrl+s操作一下,大概等5秒后,控制台输出了内容,看起来像idea帮我们自动重启了一遍项目


图片.png

好的我们再调用该接口,就输出我们修改后的内容了


图片.png

总结:每次修改都需要ctrl+s才能大概在5秒后触发自动编译,如果没有ctrl+s则不会触发,这个还是蛮合理的如果一直触发编译也消耗资源,这样需要时触发更灵活,这个触发时间应该是可以设置的具体自行百度,这里就不赘述了。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容