You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot项目修改Java类后避免重复执行mvn clean install的方案问询

嘿,这个问题我太有共鸣了——每次改完Java类还要手动跑mvn clean+mvn install才能看到效果,真的太拖开发效率了!Spring Boot其实早就为咱们准备了解决方案,完全不用这么折腾,下面给你几种靠谱的方法,按推荐程度排序:

1. 用Spring DevTools(首推!)

这是Spring官方专门为开发阶段打造的热部署工具,配置简单,效果还贼好:

  • 第一步:添加依赖
    在你的pom.xml里加入DevTools的依赖:
    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-devtools</artifactId>
        <scope>runtime</scope>
        <optional>true</optional>
    </dependency>
    
  • 第二步:开启IDE自动构建
    以IntelliJ IDEA为例(Eclipse操作类似):
    1. 打开Settings → Build, Execution, Deployment → Compiler,勾选「Build project automatically」
    2. 按下Ctrl+Shift+A(Windows/Linux)或Cmd+Shift+A(Mac),搜索「Registry」,找到compiler.automake.allow.when.app.running并勾选
  • 效果:以后你修改Java文件并保存,DevTools会自动检测到代码变化,进行轻量级应用重启——比你手动跑mvn命令快N倍!而且它默认会忽略视图文件(比如你的.xhtml)的变化,刚好和你现有实时更新的视图完美兼容。
2. Spring Loaded(适配旧版Spring Boot)

如果你的Spring Boot版本是1.x系列,DevTools可能兼容性不太好,可以试试Spring Loaded:

  • 在pom.xml的build插件里配置:
    <plugin>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-maven-plugin</artifactId>
        <dependencies>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>springloaded</artifactId>
                <version>1.2.8.RELEASE</version>
            </dependency>
        </dependencies>
    </plugin>
    
  • 用mvn spring-boot:run启动应用,修改Java文件保存后,Spring Loaded会直接重新加载对应的类,不用重启整个应用。不过它的功能比DevTools少一点,比如不支持配置文件的热更新,但应付Java类的修改足够了。
3. IDE自带的Hot Swap功能(应急用)

几乎所有主流IDE都自带热交换功能,但它有个大局限:只能修改方法体内容。如果是新增类、改方法签名、加字段这种结构变更,热交换会失效,还是得重启应用。

  • 开启方式(IntelliJ):在Run/Debug配置里,把「On 'Update' action」和「On frame deactivation」都设为「Update classes and resources」
  • 触发更新:改完代码后按Ctrl+F10(Windows/Linux)或Cmd+F10(Mac),IDE会尝试把修改后的类文件热部署到运行中的应用里。

最后提个小细节:DevTools默认会排除target、META-INF这些目录,如果你的自定义资源需要热更新,可以在application.properties里加一行:

spring.devtools.restart.additional-paths=src/main/java/com/yourpackage/custom

内容的提问来源于stack exchange,提问作者MarioC

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 02:22:26