我在CompareEditor中显示了CompareEditorInput,它比较了文本数据。我需要在CompareEditor之外更改CompareEditorInput时重新加载。
答案 0 :(得分:3)
您可以在setInput(sameInput)
上致电CompareEditor
,但由于CompareEditor
是内部的,setInput()
在EditorPart
中不公开,因此解决方法是调用{{ 3}} .init(IEditorSite site, IEditorInput input)
。
IWorkbenchWindow wnd = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
IEditorPart editor = wnd.getActivePage().findEditor(input);
editor.init((IEditorSite) editor.getSite(), input);
答案 1 :(得分:-1)
新的java io包java.nio.file包提供了一个文件更改通知API,称为Watch Service API。使用它,您可以监视磁盘上的文件并跟踪任何更改。请查看此内容以获取更多reference
创建一个单独的线程,该线程使用WatchService API并在后台监视该文件,如果在磁盘上发现任何更改,则通知用户。