java.lang.ClassFormatError: Dupliquer le nom de la méthode&signature dans le fichier de classe

Nous sommes dans le processus de mise à jour de notre application Weblogic 10.3.0 à 10.3.6. Lorsque nous essayons de déployer, nous obtenons le message d'erreur:

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

Après enquête, nous avons découvert que le problème est causé par un code qui ressemble à ceci:

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

Cela conduit à 2 foo méthodes produites dans la Baz....ELOImpl.class ce qui conduit à cette erreur, quand nous essayons de déployer les fichiers ear.

L'évidente solution de contournement est de supprimer ce modèle, mais il y a d'autres suggestions? Nous sommes dans le mauvais ici ou devrait-il être considéré comme un bug dans weblogic?

Nous sommes toujours à l'aide de EJB 2 et ce modèle a travaillé dans Weblogic 8.1 and 10.3.0

interface Baz s'étend Foo, Bar{} au lieu de cela, il devrait interface Baz implémente Foo, Bar{}
Mal. Interfaces extends d'autres interfaces. Les Classes implements interfaces.
Est-il seulement weblogic qui a été mis à niveau? Rien d'autre? Aussi, pourquoi ce modèle pour commencer? Quel est ce modèle tente de résoudre?
Oui, weblogic est la seule chose mis à jour. Le modèle est-il surtout par accident. J'ai juste nettoyé l'une des haricots comme cela et tout ce que j'avais à faire était de supprimer les méthodes à partir de l'une des interfaces, donc c'est probablement un cas de quelqu'un tend.
J'ai vraiment utilisé ce genre de modèle avant de l'; normalement le compilateur aurait assurez-vous que vous n'obtenez pas ces erreurs. Il sonne comme il peut être un problème avec votre compilateur?

OriginalL'auteur Pavel Rozenblioum | 2013-06-14