【问题标题】:Jboss Wildfly EJB3 and Mybatis Deployment Error: NoSuchMethodError javax.persistence.Table.indexes()[Ljavax/persistence/Index;Jboss Wildfly EJB3 和 Mybatis 部署错误:NoSuchMethodError javax.persistence.Table.indexes()[Ljavax/persistence/Index;
【发布时间】:2014-12-28 12:37:45
【问题描述】:

我正在尝试将 EAR 文件部署到 Jboss Wildfly (8.1.0),但出现以下异常:

Caused by: java.lang.NoSuchMethodError: javax.persistence.Table.indexes()[Ljavax/persistence/Index;


我的 EAR 文件包含一个 EJB jar,其中包含 mybatis(3.2.7 版)持久性单元,这些单元对 cglib(3.1 版)具有依赖关系。
这个完全相同的 ear 文件部署在 JBoss 7(版本 7.1.1)中没有问题
基于错误说方法未找到但我知道类和方法在那里它必须在新版本的jboss中存在一些类冲突。

【问题讨论】:

    标签: jboss ejb-3.0 mybatis wildfly


    【解决方案1】:

    经过一番调查和剖析耳朵文件后,我设法找到了答案。问题是我的 EJB jar 中包含的 asm.jar 作为 cglib 的子依赖项。 jboss 包含的 jar 和 EAR jar 之间存在类冲突。要修复它,只需在 cglib 依赖项上为 asm 子依赖项添加一个 maven 排除项。

    <exclusions>
            <exclusion>
                <groupId>org.ow2.asm</groupId>
                <artifactId>asm</artifactId>
            </exclusion>
    </exclusions>
    

    【讨论】:

      猜你喜欢
      • 2014-01-11
      • 2014-12-24
      • 1970-01-01
      • 1970-01-01
      • 2019-11-26
      • 2015-03-24
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多