到 Google 资讯主页   
EasyJF首页   资料   源码   软件    论坛   网站    
   使用帮助    
    该信息为本站MyRSS系统缓存内容,部分图片及附件有可能无法正常使用.easyjf.comwww.blogjava.net无关,不对该信息负责.通过http://www.blogjava.net/dreamstone/archive/2007/08/28/140578.html访问该信息的原始内容.
页面功能  【加入收藏】 【推荐给朋友】 【字体:  】 【关闭】   
eclipse 插件开发中如何实现刷新和重编译
作者:dreamstone 来源:www.blogjava.net  发布时间:2007-08-31 13:09:21.42

在做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));
感谢luma@smth cloudor@smth的帮忙


dreamstone 2007-08-28 16:32 发表评论

 
相关文章
 
页面功能  【加入收藏】 【推荐给朋友】 【字体:  】 【关闭】   


EasyJF.com 2006 隐私政策 使用EasyJF前必读