如何使用IJavaProject#findType()来获取java项目中的所有方法?

时间:2016-10-19 13:31:45

标签: java eclipse

我需要从Eclipse上的java项目中获取所有方法,所以我想使用IType#getMethods()来执行此操作。但是,为此,在我的代码中,我需要使用IJavaProject#findType()来实例化一个IType类。这样,我无法知道哪个参数传递给IJavaProject#findType()以指定我想要get方法。我怎样才能做到这一点?代码如下。

public void getAllMethods(ExecutionEvent event) throws CoreException{

TreeSelection selection = (TreeSelection)HandlerUtil.getCurrentSelection(event);
IJavaElement je = (IJavaElement)selection.getFirstElement();
IJavaProject jproj = je.getJavaProject();
IProject p = (IProject)jproj.getResource();
IJavaProject javaProject = JavaCore.create(p);

IType itype = javaProject.findType(""); //which parameter to pass here?
IMethod[] allMethods = itype.getMethods();

for(int i=0; i<allMethods.length;i++)
        System.out.println(allMethods[i].getElementName());
}

1 个答案:

答案 0 :(得分:0)

基本上,您可以传递该类的完全限定名称。对于此签名和其他重载签名,请参阅文档here