Java|SpringBoot 项目开发时,让 FreeMarker 文件编辑后自动更新

正在维护的一个 SpringBoot 项目是前后端一体的,页面使用 FreeMarker 编写。在开发过程中,ftl 文件编辑后,每次都需要重启应用才能看到效果,效率非常低下。这里记录通过哪些配置后,可以让它们免重启自动更新。

  1. 在应用的 pom.xml 文件里,做如下修改:

    xml 复制代码
    <dependencies>
        <!-- 添加以下依赖 -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-devtools</artifactId>
            <optional>true</optional>
            <scope>runtime</scope>
        </dependency>
    </dependencies>
    
    <build>
        <finalName>${artifactId}</finalName>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <!-- 添加以下这一行 -->
                    <fork>true</fork>
                </configuration>
            </plugin>
        </plugins>
    </build>
  2. 在 application-dev.properties 文件里添加如下内容:

    ini 复制代码
    # freemarker hot reload
    spring.freemarker.cache=false
    spring.freemarker.settings.template_update_delay=0

    禁用 FreeMarker 缓存,有更改后即时更新。

  3. 修改 IDEA 配置,开启自动编译:

  4. 编译应用运行时的 Run/Debug Configurations:

    将 On 'Update' action: Update classes and resources 和 On frame deactivation: Update classes and resources 配置打开。

关于 spring-boot-devtools 的相关用途与说明,可以参考 Spring 官方文档:docs.spring.io/spring-boot... Java 代码后免于手动重启,也可以借助于 spring-boot-devtools 的相关配置。

参考链接:


如果读完文章有收获,可以关注我的微信公众号「闷骚的程序员」并🌟设为星标🌟,随时阅读更多内容。

相关推荐
野生的码农17 小时前
码农的妇产科实习记录
android·java·人工智能
毕设源码-赖学姐18 小时前
【开题答辩全过程】以 高校人才培养方案管理系统的设计与实现为例,包含答辩的问题和答案
java
+VX:Fegn089519 小时前
计算机毕业设计|基于springboot + vue在线音乐播放系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
一起努力啊~19 小时前
算法刷题-二分查找
java·数据结构·算法
小途软件19 小时前
高校宿舍访客预约管理平台开发
java·人工智能·pytorch·python·深度学习·语言模型
J_liaty19 小时前
Java版本演进:从JDK 8到JDK 21的特性革命与对比分析
java·开发语言·jdk
+VX:Fegn089519 小时前
计算机毕业设计|基于springboot + vue律师咨询系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·课程设计
daidaidaiyu19 小时前
一文学习和实践 当下互联网安全的基石 - TLS 和 SSL
java·netty
hssfscv20 小时前
Javaweb学习笔记——后端实战2_部门管理
java·笔记·学习
NE_STOP20 小时前
认识shiro
java