我尝试以编程方式刷新我的 Sirius 项目,就像按 F5 时它会刷新一样。project.refreshLocal(IResource.DEPTH_INFINITE, new NullProgressMonitor())
没有按照我想要的方式刷新项目,所以我检查了它的org.eclipse.ui.actions.RefreshAction
作用。我发现org.eclipse.ui.actions.RefreshAction
使用以下代码片段
shell.getDisplay().asyncExec(new Runnable() {
@Override
public void run() {
StructuredViewer viewer = getActionSite().getStructuredViewer();
if (viewer != null && viewer.getControl() != null && !viewer.getControl().isDisposed()) {
viewer.refresh();
}
}
});
像我想要的那样刷新模型浏览器视图。我现在的问题是我得到了 modelexplorer 视图,但不知道如何从中访问查看器以刷新视图。有谁知道该怎么做?