导读:
在做eclipse插件开发中,特别是自动生成代码或者uml->代码的插件中,有时需要刷新一下文件夹或者重新编译一下。那如何实现这两个操作呢。
一、实现刷新[bitsCN.Com]
1、一个关键的接口是org.eclipse.core.resources.IResource
www_bitscn_com中国.网管联盟
调用这个接口的refreshLocal方法即可。例如refreshLocal(IResource.DEPTH_INFINITE, null)
bitsCN.nET*中国网管博客
2、到底有哪些类实现了这个接口呢?
[bitsCN_com]
来看一下继承结构
www@bitscn@com
首先继承自IResource的接口有IContainer、IFolder、IProject、IWorkspaceRoot、IFile一共5个加上IResource 6个,凡是实现这些接口的都可以。 [bitsCN_com]
3、接口的继承结构
BBS.bitsCN.com网管论坛
接口 extends www_bitscn_com中国.网管联盟
IResource 无 www_bitscn_com中国.网管联盟
IContainer IResource
[bitsCN_com]
IFile IResource
www_bitscn_com中国.网管联盟
IFolder IContainer bitsCN~com
IProject IContainer
www_bitscn_com中国.网管联盟
IWorkspaceRoot IContainer bbs.bitsCN.com
4、类的继承结构
www@bitscn@com
类 extends implements bitsCN.nET*中国网管博客
Resource 无 IResource bitsCN.nET*中国网管博客
Container Resource IContainer
www@bitscn@com
File Resource IFile bitsCN~com
Folder Container IFolder
中国_网管联盟bitsCN.com
Project Container IProject 中国_网管联盟bitsCN.com
WorkspaceRoot Container IWorkspaceRoot
bbs.bitsCN.com中国网管论坛
二、实现重编译(也就是clean)[bitsCN_com]
clean all:
中国_网管联盟bitsCN.com
ResourcesPlugin.getWorkspace()。build(IncrementalProjectBuilder.CLEAN_BUILD, www_bitscn_com中国.网管联盟
monitor);
www_bitscn_com中国.网管联盟
clean one project bitsCN.nET*中国网管博客
((IProject) selection[i])。build(IncrementalProjectBuilder.CLEAN_BUILD, new bitsCN.nET*中国网管博客
SubProgressMonitor(monitor, 1));
本文转自
http://www.bitscn.com/java/eclipse/200711/120280.html
在做eclipse插件开发中,特别是自动生成代码或者uml->代码的插件中,有时需要刷新一下文件夹或者重新编译一下。那如何实现这两个操作呢。
一、实现刷新[bitsCN.Com]
1、一个关键的接口是org.eclipse.core.resources.IResource
www_bitscn_com中国.网管联盟
调用这个接口的refreshLocal方法即可。例如refreshLocal(IResource.DEPTH_INFINITE, null)
bitsCN.nET*中国网管博客
2、到底有哪些类实现了这个接口呢?
[bitsCN_com]
来看一下继承结构
www@bitscn@com
首先继承自IResource的接口有IContainer、IFolder、IProject、IWorkspaceRoot、IFile一共5个加上IResource 6个,凡是实现这些接口的都可以。 [bitsCN_com]
3、接口的继承结构
BBS.bitsCN.com网管论坛
接口 extends www_bitscn_com中国.网管联盟
IResource 无 www_bitscn_com中国.网管联盟
IContainer IResource
[bitsCN_com]
IFile IResource
www_bitscn_com中国.网管联盟
IFolder IContainer bitsCN~com
IProject IContainer
www_bitscn_com中国.网管联盟
IWorkspaceRoot IContainer bbs.bitsCN.com
4、类的继承结构
www@bitscn@com
类 extends implements bitsCN.nET*中国网管博客
Resource 无 IResource bitsCN.nET*中国网管博客
Container Resource IContainer
www@bitscn@com
File Resource IFile bitsCN~com
Folder Container IFolder
中国_网管联盟bitsCN.com
Project Container IProject 中国_网管联盟bitsCN.com
WorkspaceRoot Container IWorkspaceRoot
bbs.bitsCN.com中国网管论坛
二、实现重编译(也就是clean)[bitsCN_com]
clean all:
中国_网管联盟bitsCN.com
ResourcesPlugin.getWorkspace()。build(IncrementalProjectBuilder.CLEAN_BUILD, www_bitscn_com中国.网管联盟
monitor);
www_bitscn_com中国.网管联盟
clean one project bitsCN.nET*中国网管博客
((IProject) selection[i])。build(IncrementalProjectBuilder.CLEAN_BUILD, new bitsCN.nET*中国网管博客
SubProgressMonitor(monitor, 1));
本文转自
http://www.bitscn.com/java/eclipse/200711/120280.html