Eclipse插件开发中实现刷新和重编译
在eclipse插件的开发中,尤其是自动生成代码或者uml->代码的插件,有时候需要刷新文件夹或者重新编译。那么如何实现这两种操作呢?
首先,实现刷新
1.一个关键的接口是org . eclipse . core . resources . I resource。
调用此接口的refreshLocal方法。例如refresh local(I resource . depth _ infinite,null)
2.什么类实现了这个接口?
看一下继承结构。
首先,从IResource继承了五个接口:IContainer、IFolder、IProject、IWorkspaceRoot、IFile
加上IResource 6。任何实现这些接口的人都可以。
3.接口的继承结构
接口扩展
IResource没有
I container I resource
ifile I resource
ifolder I container
I project I container
iworkspace root I container。
4.类的继承结构
类扩展实现
资源没有iresource
容器资源icontainer
文件资源ifile
文件夹容器ifolder [/ br/]项目容器IProject
WorkspaceRoot容器IWorkspaceRoot
第二,实现重新编译(即清理)
全部清理:
resources plugin . get workspace()。build(IncrementalProjectBuilder。CLEAN_BUILD,
monitor);
清除一个项目
((IProject)选择[i])。build(IncrementalProjectBuilder。CLEAN_BUILD,new
subprogress monitor(monitor,1));
0条评论