Intellij IDEA 使用Spring-boot-devTools无效解决办法

本文详细介绍如何在Spring Boot项目中配置devtools插件,实现页面、类文件及属性文件的热部署。通过修改pom.xml文件添加依赖及插件,确保应用在文件变动时能快速重启。特别针对Eclipse和Intellij IDEA开发环境提供了具体设置步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

配置devtools

1.maven配置

在pom.xml文件中,增加如下插件依赖


 <!--devtools可以实现页面热部署(即页面修改后会立即生效,这个可以直接在application.properties文件中配置spring.thymeleaf.cache=false来实现),
                   实现类文件热部署(类文件修改后不会立即生效),实现对属性文件的热部署。
                   即devtools会监听classpath下的文件变动,并且会立即重启应用(发生在保存时机),注意:因为其采用的虚拟机机制,该项重启是很快的
                -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional><!-- optional=true,依赖不会传递,该项目依赖devtools;之后依赖myboot项目的项目如果想要使用devtools,需要重新引入 -->
        </dependency>

在pom.xml文件中,增加如下插件

<build>
        <plugins>
            <!-- 用于将应用打成可直接运行的jar(该jar就是用于生产环境中的jar) 值得注意的是,如果没有引用spring-boot-starter-parent做parent,
               且采用了上述的第二种方式,这里也要做出相应的改动 -->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <fork>true</fork><!-- 如果没有该项配置,肯呢个devtools不会起作用,即应用不会restart -->
                </configuration>
            </plugin>
            <!-- spring Boot在编译的时候,是有默认JDK版本的,如果我们期望使用我们要的JDK版本的话,那么要配置呢 -->
            <plugin>
                <artifactId>maven-compiler-plugin</artifactId>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </build>

 

Eclipse

如果是eclipse开发,现在已经可以重启项目来使用了。但是idea的话,请看第二步的设置!

 

Intellij IDEA配置

1.设置中打开settings

2.按快捷键 Shift+Ctrl+Alt+/ ,选择 Registry

3.勾选compiler.automake.allow.when.app.running

### 使用 `spring-boot-devtools` 进行热部署 #### 添加依赖项 为了启用 Spring Boot 应用程序的自动重启功能,在项目的构建配置文件中加入 `spring-boot-devtools` 依赖。对于 Maven 构建工具而言,可以在 pom.xml 文件内添加如下片段: ```xml <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <scope>runtime</scope> <optional>true</optional> </dependency> ``` 此操作使得应用程序能够在开发期间更方便地测试更改而无需手动重启服务器[^4]。 #### 修改 application.properties 或者 application.yml 配置文件 为了让热部署生效并优化其行为模式,可以调整一些特定属性来控制哪些资源应该被监视以及何时触发重载过程。例如: - 开启热部署支持: ```properties spring.devtools.restart.enabled=true ``` - 设置额外监控路径以便于更快响应源码变动: ```properties spring.devtools.restart.additional-paths=src/main/java ``` - 排除不需要参与实时更新的部分(如静态资源)以提高效率: ```properties spring.devtools.restart.exclude=static/** ``` 这些设置能够帮助开发者更加灵活地管理开发环境中的动态特性[^2]。 #### IDE 设置 除了上述技术层面的操作外,还需要确保集成开发环境中也进行了适当配置才能让整个流程顺利运作。针对 IntelliJ IDEA 用户来说,应当确认已勾选了相应的选项用于激活即时编译等功能。 通过以上几个方面的协同工作,就可以实现高效的迭代式编码体验——即保存代码之后几乎立刻看到效果反馈,从而大大提升了生产力和调试速度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值