java.lang.ClassFormatError : Duplicate method name&signature in class file 错误

标签 java jakarta-ee ejb weblogic

我们正在将我们的应用程序从 Weblogic 10.3.0 升级到 10.3.6。当我们尝试部署它时,我们收到错误:

 java.lang.ClassFormatError: Duplicate method name&signature in class file...

经过进一步调查,我们发现问题是由如下代码引起的:

interface Foo{ 
    void foo();
}
interface Bar{ 
    void foo();
}
interface Baz extends Foo, Bar{}
BazEJB implements Baz....

这会导致在 Baz 中生成 2 个 foo 方法....ELOImpl.class,这会在我们尝试部署 ear 文件时导致此错误。

明显的解决方法是删除此模式,但还有其他建议吗?是我们错了还是应该将其视为 weblogic 中的错误?

我们仍在使用 EJB 2 并且此模式适用于 Weblogic 8.1 和 10.3.0

最佳答案

确保清理重新编译有错误的类。无论您可以设置什么标志:让它更干净、更强制,直到它起作用。

关于java.lang.ClassFormatError : Duplicate method name&signature in class file 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17102324/

相关文章:

java - guava 和 apache 等效库之间有哪些重大改进?

java - 根据一条数据的最高编号对sql表进行排序

jakarta-ee - 使用 Struts 2 标签时新变量到底位于哪里?

jakarta-ee - guava 之类的用于 Web 开发的 java 库

serialization - @ViewScoped @ManagedBean中的@EJB导致java.io.NotSerializableException

java - AbstractApplicationContext 尚未刷新异常

java - 使用 selenium 驱动程序在鼠标悬停时测试工具提示

java - Hibernate一对多关系数据插入报错

java - EJB 注入(inject)与仅 JSF 管理的 bean

java - 在客户端代码中处理 EJBException