zoukankan      html  css  js  c++  java
  • springboot项目在idea中的热部署的几种方式

    1. devtools依赖方式

    我们在使用idea运行springboot项目时想要实现热部署,首先需要添加依赖

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

    但是仅此是不行的,因为idea默认没有开启自动编译,所以我们需要进行一些配置:
    首先在File–>settings找到compiler,勾选自动编译打开自动编译
    注意后面有提示 only works while not running/debugging,所以还需要配置ruuning时也自动编译。需要使用一个快捷键,ctrl+shift+alt+/ ,选择registry
    在这里插入图片描述
    然后找到compiler.automake.allow.when.app.running勾选
    运行时自动编译到此我们尝试运行项目,看看热部署是否生效。如果还是不生效不要着急,可以在pom文件里增加fork为true

    <build>
            <plugins>
                <plugin>
                    <groupId>org.springframework.boot</groupId>
                    <artifactId>spring-boot-maven-plugin</artifactId>
                    <executions>
                        <execution>
                            <goals>
                                <goal>repackage</goal>
                            </goals>
                        </execution>
                    </executions>
                    <configuration>
                        <executable>true</executable>
                        <fork>true</fork><!-- 如果没有该配置,热部署的devtools不生效 -->
                    </configuration>
                </plugin>
            </plugins>
        </build>
    

    到此应该就成功了,当我们修改完文件光标移开时,可以在控制台的输出信息看到springboot开始自动make,热部署也就生效了。

    2. springboot的edit配置

    这种方式非常简单(其实不算热部署),即我们在修改完文件时,可以手动触发编译update classes and resource
    在这里插入图片描述
    个人更喜欢这种方式,可以在批量修改完文件后,手动触发make。而不是像第一种方法那样每次修改完都自动部署,降低性能,且没必要。

  • 相关阅读:
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    jQuery火箭图标返回顶部代码
    redis被攻击,怎么预防
    Redis3.2.12单节点安装
    Linux安装Redis、后台运行、系统自启动
    Redis 密码设置和查看密码
    Redis protected-mode属性解读
    SpringCloud(9)----mysql实现配置中心
    SpringCloud(8)----zuul权限校验、接口限流
  • 原文地址:https://www.cnblogs.com/seasail/p/12179387.html
Copyright © 2011-2022 走看看