如何在Eclipse插件中确定Java源文件的绝对文件路径?

bar*_*uin 5 eclipse eclipse-plugin

在我的自定义Eclipse插件中,我将Java类的完全限定类名称作为String,并且想知道它的实际文件路径.实际上,我想知道它所在的源文件夹的名称.

该类可以来自Workspace中的任何Java项目.源文件夹名称是任意的.

我使用Eclipse 3.6.

谢谢!

And*_*erg 3

您必须使用搜索引擎 API。看org.eclipse.jdt.core.search.SearchEngine

您可以看到可以调用各种静态函数,每个函数都有自己的选项。您将需要创建一个适当的org.eclipse.jdt.core.search.SearchPattern,然后将其与范围(工作区)和请求者(收集所有结果的东西)一起传递给搜索引擎。

通常,您会返回一堆内容,例如ITypes,它们是用于访问 Java 模型中类型的公共 API。您可以调用IType.getResource().getLocation()以获取任何类型的文件系统位置。getResource 方法可能返回 null,因此您需要检查这一点。