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

Spring Boot 3.2.5集成Infinispan时javax.transaction缺失错误排查

解决方案

Infinispan 14.x已经完成了Jakarta API的迁移,你遇到的问题是因为引入了针对javax的Infinispan依赖,而非Jakarta版本的。以下是具体解决步骤:

  • 替换Infinispan Starter依赖
    把POM中原来的infinispan-spring-boot-starter替换为Jakarta专属的starter:

    <dependency>
        <groupId>org.infinispan</groupId>
        <artifactId>infinispan-spring-boot-starter-jakarta</artifactId>
        <version>14.0.32.Final</version>
    </dependency>
    

    如果你直接引入Infinispan核心库,也要换成Jakarta版本:

    <dependency>
        <groupId>org.infinispan</groupId>
        <artifactId>infinispan-core-jakarta</artifactId>
        <version>14.0.32.Final</version>
    </dependency>
    
  • 排除传递的javax依赖
    检查POM中其他依赖是否引入了javax.transaction-api,如果有,通过exclusion标签排除:

    <dependency>
        <groupId>[问题依赖的groupId]</groupId>
        <artifactId>[问题依赖的artifactId]</artifactId>
        <exclusions>
            <exclusion>
                <groupId>javax.transaction</groupId>
                <artifactId>javax.transaction-api</artifactId>
            </exclusion>
        </exclusions>
    </dependency>
    
  • 修正配置类的API导入
    确保你的CacheConfig类中使用的是Jakarta事务API,比如:

    import jakarta.transaction.Transactional;
    // 而非 import javax.transaction.Transactional;
    

完成以上步骤后,应用会使用Jakarta版本的事务API,无需添加任何javax相关依赖即可解决NoClassDefFoundError问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.16 14:17:05