在做eclipse插件开发中,特别是自动生成代码或者uml->代码的插件中,有时需要刷新一下文件夹或者重新编译一下.那如何实现这两个操作呢。
  一、实现刷新  1、一个关键的接口是org.eclipse.core.resources.IResource
  调用这个接口的refreshLocal方法即可。例如refreshLocal(IResource.DEPTH_INFINITE, null)
  2、到底有哪些类实现了这个接口呢?
  来看一下继承结构
  首先继承自IResource的接口有IContainer、IFolder、IProject、IWorkspaceRoot、IFile一共5个
加上IResource 6个,凡是实现这些接口的都可以。
  3、接口的继承结构
  接口 extends
  IResource 无 
  IContainer IResource
  IFile IResource
  IFolder IContainer
  IProject IContainer
  IWorkspaceRoot IContainer
  4、类的继承结构 
  类 extends implements
  Resource 无 IResource
  Container Resource IContainer
  File Resource IFile
  Folder Container IFolder
  Project Container IProject
  WorkspaceRoot Container IWorkspaceRoot  
二、实现重编译(也就是clean)clean all:
ResourcesPlugin.getWorkspace().build(IncrementalProjectBuilder.CLEAN_BUILD,
monitor);
clean one project
((IProject) selection[i]).build(IncrementalProjectBuilder.CLEAN_BUILD, new
SubProgressMonitor(monitor, 1));
查看本文来源