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

Spring 5.3.14升级后遭遇java.lang.NoSuchMethodError问题求助

问题解决:Spring 5.3.14升级后BeanExpressionException报错

问题原因

NoSuchMethodError 本质是依赖版本冲突:Spring 5.3.14的org.springframework.expression模块(即spring-expression jar)需要对应版本的类结构,但项目中存在旧版本的spring-expression jar,或是其他依赖间接引入了不匹配版本的该jar,导致类加载时找不到目标构造方法StandardTypeConverter(java.util.function.Supplier)。

解决步骤

  • 排查依赖树,定位冲突的spring-expression版本
    Maven项目执行命令:
    mvn dependency:tree | grep spring-expression
    
    Gradle项目执行命令:
    gradle dependencies | grep spring-expression
    
  • 排除冲突依赖
    Maven项目在pom.xml中找到引入冲突版本的依赖,添加排除配置:
    <dependency>
        <groupId>xxx</groupId>
        <artifactId>xxx</artifactId>
        <version>xxx</version>
        <exclusions>
            <exclusion>
                <groupId>org.springframework</groupId>
                <artifactId>spring-expression</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    
    Gradle项目添加exclude规则:
    implementation('xxx:xxx:xxx') {
        exclude group: 'org.springframework', module: 'spring-expression'
    }
    
  • 强制统一spring-expression版本
    Maven通过dependencyManagement锁定版本:
    <dependencyManagement>
        <dependencies>
            <dependency>
                <groupId>org.springframework</groupId>
                <artifactId>spring-expression</artifactId>
                <version>5.3.14</version>
            </dependency>
        </dependencies>
    </dependencyManagement>
    
    Gradle通过force强制指定版本:
    implementation('org.springframework:spring-expression:5.3.14') {
        force = true
    }
    
  • 清理并重新构建项目
    Maven执行:
    mvn clean install
    
    Gradle执行:
    gradle clean build
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 14:35:21