Java 触摸文件后,编辑器可能无法刷新
我们为Eclipse开发了一个插件,我的问题是,当我尝试用touch刷新打开的编辑器时,它有时不会刷新其中的一些编辑器,但在我将空格或任何修改代码中文件的内容放入非刷新编辑器后,它会自动刷新 我的文件刷新代码如下所示:Java 触摸文件后,编辑器可能无法刷新,java,eclipse,eclipse-plugin,Java,Eclipse,Eclipse Plugin,我们为Eclipse开发了一个插件,我的问题是,当我尝试用touch刷新打开的编辑器时,它有时不会刷新其中的一些编辑器,但在我将空格或任何修改代码中文件的内容放入非刷新编辑器后,它会自动刷新 我的文件刷新代码如下所示: IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow(); if(window != null){ IWorkbenchPage page = window.getAct
IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
if(window != null){
IWorkbenchPage page = window.getActivePage();
if(page != null){
IEditorReference[] editRefs = page.getEditorReferences();
for(IEditorReference e : editRefs){
try{
IFile file = (IFile) e.getEditorInput().getAdapter(IFile.class);
if(file != null){
file.touch(null);
}
} catch(CoreException exception) {
exception.printStackTrace();
}
}
}
}
以前有人见过这个问题吗?有什么建议吗?可以预测什么类型的编辑器无法刷新吗?可能编辑器未在侦听资源更改。很抱歉回答得太晚。所以我指的是Eclipse中的编辑器。下面是一幅我在word editor下所指的图片:它可以工作9/10次,但有时并不令人耳目一新。控制台中没有错误,它只是什么都不做。此编辑器刷新从属性窗口调用,并在按下“确定”按钮后调用。问题很常见,当我打开了一个以上的编辑器时,不是集中的编辑器,而是其他编辑器中的一个或多个编辑器没有刷新是的。但是Eclipse中有许多不同的编辑器——Java编辑器、文本编辑器、plugin.xml编辑器等等。。。。。每个不同的编辑器本身都有处理外部资源更改的功能,还有一些编辑器没有此代码。