我应该阅读当前打开的DSL文件以创建自动填充功能。为此,我应该以编程方式找到文件的位置,然后阅读它。但是,似乎没有替代方案可以达到这个目的。如果我使用Eclipse插件方法,我会收到以下错误java.lang.ClassCastException: org.eclipse.xtext.xbase.ui.editor.XbaseEditor cannot be cast to org.eclipse.core.resources.IFile
请帮忙
答案 0 :(得分:1)
确定任何编辑器正在编辑的文件的标准方法是:
IEditorPart editor = get the editor
IEditorInput editorInput = editor.getEditorInput();
if (editorInput instanceof IFileEditorInput)
{
IFile file = ((IFileEditorInput)editorInput).getFile();
// TODO handle file
}