PowerMock et Java 8 question: InterfaceMethodrefInfo ne peut pas être lancé à MethodrefInfo
Je vais avoir des problèmes en essayant d'exécuter un test de l'unité à l'aide de PowerMock avec Mockito. J'ai besoin de PowerMockito de se moquer d'une méthode statique.
Ce sont les versions Im en utilisant:
PowerMock 1.6.2
Mockito 1.10.19
JUnit 4.12
Java 8
Quand j'ai ajouter l'annotation @PrepareForTest(Graph.class) j'obtiens l'erreur suivante:
java.lang.IllegalStateException: Failed to transform class with name name.of.my.package.GraphUtil. Reason: javassist.bytecode.InterfaceMethodrefInfo cannot be cast to javassist.bytecode.MethodrefInfo
J'ai lu dans l'officiel PowerMock page de Google que ce soit lié à javassist. Mais je suis un peu perdu et je ne sais pas comment le résoudre.
Juste au cas où, j'ai aussi essayé de télécharger la dernière version de Powermock (1.6.3-INSTANTANÉ) mais ne fonctionne pas non plus.
Quelqu'un pourrait-il m'aider, s'il vous plaît?
Merci d'avance
- Bien dans l'outil de suivi de javassist il y avait un bug lié (issues.jboss.org/browse/JASSIST-220) pour que l'exception et M. Chiba fusionné un pull request sur le 22 juillet 2014 (github.com/jboss-javassist/javassist/pull/11). Ma première suggestion serait de vous assurer que vous utilisez la dernière version de javassist et si la mise à niveau à la dernière version.
- veuillez ajouter des commentaires comme le votre réponse et de l'accepter, donc la question ne reste pas sans réponse. Merci 🙂
Vous devez vous connecter pour publier un commentaire.
Suivantes Francisco González réponse, c'est ce que j'avais à faire :
javassist
(e.x. la mise en veille). Vous devez supprimer<scope>test</scope>
lorsque vous ajoutezjavassist
de dépendance.Oui, c'était le problème. PowerMock a une dépendance à javassist, donc j'ai juste eu à exclure que transitive de la dépendance dans mon pompon et plus tard également la dépendance à la version fixe de javassist. Et qui a fonctionné pour moi. Merci!