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

Spring Boot升级后集成测试失败,报AOP相关异常求助

解决Spring Boot 2.2.5 + OpenJDK13集成测试抛出VerifyError的问题

我最近在升级项目时遇到了完全相同的棘手状况,折腾了好一阵终于找到了解决方案,分享给你:

问题场景

我做了两项核心升级操作:

  1. 将Spring Boot parent依赖从2.1.5.RELEASE升级到2.2.5.RELEASE,配置如下:
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.2.5.RELEASE</version>
        <!-- 原版本:<version>2.1.5.RELEASE</version> -->
    </parent>
    
  2. 同时把底层Java环境从OpenJDK 11升级到OpenJDK 13

升级后项目能正常编译生成Jar包,但所有60+集成测试全部失败,抛出的异常链如下:

Unexpected AOP exception; nested exception is java.lang.IllegalStateException: Unable to load cache item

追踪根因指向:

java.lang.VerifyError: Stack map does not match the one at exception handle

之前这些测试都是正常运行的,我在Stack Overflow上找到过同类问题但没有现成解决办法,谷歌搜到的相关中文资料也无法正常阅读。我的开发环境是Spring Tools Suite 4.5.1.RELEASE,运行在Linux 5.3.0-40-generic内核上。

最终解决方案

经过多次依赖调整尝试,我通过以下步骤解决了问题:

  • 引入aspectjrt和aspectjweaver依赖,指定版本为1.9.5
  • 将javassist升级至3.26.0-GA
  • 将cglib-nodep升级至3.3.0
  • 移除项目中的spring-aop依赖

完成这些调整后,所有集成测试都恢复正常运行了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 21:14:06