通过方法名称从IType中查找IMethod

时间:2012-12-03 23:08:21

标签: java eclipse eclipse-jdt

假设我有Hello类,它有hello方法。

public class Hello {
public int hello(int x, int y)

我需要获得“hello”方法的IMethod参考。 这是我可以获得IType(Hello)的代码。

IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();
// 1. The name of the project in the workspace
IProject project = root.getProject("Hello");
project.open(null /* IProgressMonitor */);

IJavaProject javaProject = JavaCore.create(project);
// 2. The name of the Type (including the namespace)
IType itype = javaProject.findType("smcho.HelloRenameMethod");

IMethod method = itype.findMethod() // ???

我用Google搜索了#typeMethod(),但the input parameter for this method is an IMethod instance, not a string

如何使用方法名称从IType获取IMethod?或者,我如何使用IType#findMethod()获取IMethod?

1 个答案:

答案 0 :(得分:0)

我需要使用getMethod来获取方法名称的IMethod。

IMethod method = itype.getMethod("hello", new String[] {"I", "I"});