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

Thymeleaf Extras检测Spring版本不兼容,Jar运行时抛出配置异常

解决Spring Boot Jar包运行时Thymeleaf SpringSecurity标签抛出ConfigurationException的问题

可能的原因及解决方案:

  • 确保thymeleaf-extras-springsecurity6版本与Spring Boot完全适配
    Spring Boot 3.2.3的parent依赖已经内置了对应版本的thymeleaf-extras-springsecurity6管理,不要手动指定版本号,避免隐性版本不兼容。修改pom.xml中的依赖声明,去掉version字段:

    <dependency>
        <groupId>org.thymeleaf.extras</groupId>
        <artifactId>thymeleaf-extras-springsecurity6</artifactId>
    </dependency>
    

    手动指定版本可能导致依赖和Spring Boot的Spring 6.x核心版本不匹配,IDEA开发环境的类加载顺序会掩盖这个问题,但Jar包运行时就会触发异常。

  • 重新构建Jar包,清理旧编译产物
    执行以下命令彻底清理并重新构建:

    mvn clean package
    

    旧的编译缓存或不完整的Jar包可能导致依赖类缺失,用jar -tf your-app.jar检查Jar内是否包含org/thymeleaf/extras/springsecurity6/dialect/SpringSecurityDialect.class这类核心类,缺失的话说明构建过程有问题。

  • 排除依赖中的Spring相关组件,强制使用Spring Boot管理的版本
    即使mvn dependency:tree没显示冲突,也可能存在间接依赖的Spring版本不一致。在依赖中排除Spring Security和Spring Context相关组件,确保完全使用Spring Boot parent提供的版本:

    <dependency>
        <groupId>org.thymeleaf.extras</groupId>
        <artifactId>thymeleaf-extras-springsecurity6</artifactId>
        <exclusions>
            <exclusion>
                <groupId>org.springframework</groupId>
                <artifactId>spring-context</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework.security</groupId>
                <artifactId>spring-security-web</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.springframework.security</groupId>
                <artifactId>spring-security-core</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    
  • 确认Thymeleaf配置和模板命名空间
    虽然Spring Boot会自动注册SpringSecurityDialect,但手动注册可以避免自动配置失效的情况:

    @Configuration
    public class ThymeleafConfig {
        @Bean
        public SpringSecurityDialect springSecurityDialect() {
            return new SpringSecurityDialect();
        }
    }
    

    同时检查模板文件的命名空间是否正确:

    <html xmlns:th="http://www.thymeleaf.org"
          xmlns:sec="http://www.thymeleaf.org/extras/spring-security">
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.29 00:03:15