1. 前言

在开发的工程中,我们发现只要对后端代码的一点修改,如果要想让代码生效,我们就需要重启微服务,这样就显得很笨重。我们期望我们编译修改后的java文件之后,可以自动生效。这时,我们就需要-热部署。

2. 什么是热部署

热部署监听到如果有 Class 文件改动了,就会创建一个新的 ClaassLoader 进行加载该文件,经过一系列的过程,最终将结果呈现在我们眼前。

3. 代码添加

热部署有两种方式

3.1 方式1: springloaded
<dependencies>
    <dependency>
        <groupId>org.springframework</groupId>
        <artifactId>springloaded</artifactId>
        <version>1.2.5.RELEASE</version>
    </dependency>
</dependencies>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
3.2 方式2:
<dependencies>
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <optional>true</optional>
        <scope>true</scope>
    </dependency>
</dependencies>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

此外,还需要在build进行修改,其实不加也可以。

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <fork>true</fork>
            </configuration>
        </plugin>
    </plugins>
</build>
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
3.3 对idea的设置

加入注解之后,我们需要对idea设置,让idea可以自动编译。当然我们也可以按ctrl+F9,手动进行编译。

微服务和VUE入门教程(14): 热部署_java