idea中SpringBoot热部署时mapping偶然出现丢失的问题。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了idea中SpringBoot热部署时mapping偶然出现丢失的问题。相关的知识,希望对你有一定的参考价值。

如题,今天刚刚测试过。在使用maven的spring-boot-devtools实现热部署时,虽然成功实现了修改文件就自动快速重启tomcat,但是在重启过程中出现了问题。在图2中是正常启动tomcat后提示的信息,我们可以看到可以mapped到我控制器里的/index;但是在我修改了文件后,它通过热部署重新启动tomcat时,如图3,/index就没有mapped了,导致我在浏览器访问localhost:8888/index时报404。求高手解答。

参考技术A

Intellij IDEA 实现 Spring boot 热部署看这里

你是不是有些步骤没做?

1.添加以下Spring个boot Dev Tools依赖项:

  <!-- hot swapping, disable cache for template, enable live reload -->
  <dependency>
      <groupId>org. Spring framework. boot </groupId>
      <artifactId> Spring - boot -devtools</artifactId>
      <optional>true</optional>
  </dependency>

 2. 自动构建项目

File –> Setting –> Build, Execution, Deployment –> Compiler –> 选中: Build project automatically

3. Intellij 注册表

3.1按Shift + Ctrl + A(Win /Lin)或Command+CTRL+A (Mac)打开一个弹出窗口,键入registry。

3.1找到并选中此选项compiler.automake.allow.when.app.running

参考技术B 没遇到过,留个标记!楼主收到回复的话,我也学习下。 参考技术C 请问楼主这个问题解决了么 我也遇到了和你一样的问题的追问

没有解决 后来我认为可能就是这个插件的bug 放弃了这个热部署 反正springboot重启挺快的 就手动重启一下吧

IDEA 设置springboot项目热部署

步骤:

1.开启工程自动编译

2.  Ctrl + Shift + Alt + / 然后选择Registry,开启运行时允许自动编译

 

 3.项目pom文件中添加热部署依赖

<!-- 热部署依赖 -->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <!-- 将依赖关系标记为可选<optional>true</optional>,防止使用项目将devtools传递性地应用于其他模块 -->
    <optional>true</optional>
</dependency>
<!-- 开启热部署 -->
<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <fork>true</fork>
            </configuration>
        </plugin>
    </plugins>
</build>

 4.浏览器测试

浏览器缓存可能有影响,可以关闭浏览器缓存

也可以强制用CTRL+F5强制刷新浏览

 

以上是关于idea中SpringBoot热部署时mapping偶然出现丢失的问题。的主要内容,如果未能解决你的问题,请参考以下文章

idea内springboot项目设置热部署

IDEA-SpringBoot项目设置热部署

SpringBoot-03:SpringBoot+Idea热部署

Idea中Springboot热部署无效解决方法

Idea中Springboot热部署无效解决方法

idea中设置springboot热部署