在二进制类型上使用IMethod.exists()方法

时间:2013-11-09 06:58:41

标签: java eclipse-plugin eclipse-jdt

我需要查找给定java类中是否存在给定方法。我有IMethod对象。 我使用以下代码来执行此操作。

getMethod.exists();

对于项目中的java类(源类型),它可以正常工作。

当类在jar中,即二进制类型时,我得到以下异常。有没有其他方法可以找到方法存在于jar中的类中。

java.lang.NullPointerException
at org.eclipse.jdt.internal.core.JavaElement.openWhenClosed(JavaElement.java:539)
at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:255)
at org.eclipse.jdt.internal.core.JavaElement.getElementInfo(JavaElement.java:241)
at org.eclipse.jdt.internal.core.JavaElement.exists(JavaElement.java:159)

1 个答案:

答案 0 :(得分:1)

看起来Eclipse错误https://bugs.eclipse.org/bugs/show_bug.cgi?id=402455被标记为https://bugs.eclipse.org/bugs/show_bug.cgi?id=400559的副本,它被关闭为“不是eclipse”并因为做错事而责备groovy-eclipse(但没有说出什么!)​​