转自:http://blog.csdn.net/liaomin416100569/article/details/7165425

1.获取系统默认的Shell
Shell shell = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell();
2.获取其他的插件Activetor对象
Plugin p=Platform.getPlugin("org.liaomin.huqun.ftptool");
3.获取某个插件的首选项
String name=Platform.getPlugin("插件id").getPluginPreferences().getString("首选项的key值");
4.获取工作空间的根目录
ResourcesPlugin.getWorkspace().getRoot()
5.获取某个IJAVAProject
ResourcesPlugin.getWorkspace().getRoot().getProject("工程名")
6.将IProject转换IJAVAProject
IJavaProject create = JavaCore.create(p);
7 通过路径寻找对应的资源
IWorkspaceRoot root = ResourcesPlugin.getWorkspace().getRoot();

IResource resource = root.findMember(new Path(srcPath));//srcPath类似与linux /工程名/目录/子目录

8重启工作空间

PlatformUI.getWorkbench().restart();

8查找某个透视图

PlatformUI.getWorkbench().getPerspectiveRegistry().findPerspectiveWithId(透视图id);

9 获取帮助信息

PlatformUI.getWorkbench().getHelpSystem()

10通过IFILE转换JDT对象

IJavaElement create(IFile file):从文件创建对应的Java元素。
IJavaElement create(IFolder folder):从文件夹创建对应的Java元素。
IJavaProject create(IProject project):得到IProject对应的IJavaProject。
IJavaElement create(IResource resource):从资源创建对应的Java元素。
IJavaModel create(IWorkspaceRoot root):从工作空间根目录得到对应的IJavaModel。
IClassFile createClassFileFrom(IFile file):从文件创建对应的IClassFile。
ICompilationUnit createCompilationUnitFrom(IFile file):从文件创建对应的ICompilationUnit。

eclipse插件开发中全局对象的获取的更多相关文章

  1. Eclipse插件开发中对于Jar包和类文件引用的处理(彻底解决插件开发中的NoClassDefFoundError问题)(转)

    目的:Eclipse插件开发中,经常要引用第三方包或者是引用其他插件中的类,由于插件开发环境引用类路径的设置和运行平台引用类路径的设置不同,经常导致开发过程OK,一旦运行则出现NoClassDefFo ...

  2. Eclipse插件开发中的选择监听机制(Selection Provider-Listener)

    Eclipse插件开发中的选择监听机制(Selection Provider-Listener) 监听机制是eclipse插件开发或rcp应用开发中经常使用的技术,比方点击TableViewer或Tr ...

  3. 从汇编看c++中全局对象和全局变量

    先来看c++源码: #include <iostream> using namespace std; class X { public: int i; public: X() : i(ii ...

  4. eclipse代码中使用到Launcher获取类加载器,找不到启动器类。

    解决:移除系统依赖的jar包,重新导入. 只需要在project build path中先移除JRE System Library,再添加库JRE System Library,重新编译后就一切正常了 ...

  5. Eclipse插件开发中File和IFile的转换

    (1) File转IFile 第一种方法: IFile[] ifile = ResourcesPlugin.getWorkspace().getRoot().findFilesForLocationU ...

  6. JavaScript中两种类型的全局对象/函数

    这里所说的JavaScript指浏览器环境中的包括宿主环境在内的. 第一种是ECMAScript Global Object,第二种是宿主环境(Host)下的全局对象/函数. 一.核心JavaScri ...

  7. JavaScript中两种类型的全局对象/函数【转】

    Snandy Stop, thinking is the essence of progress. JavaScript中两种类型的全局对象/函数 这里所说的JavaScript指浏览器环境中的包括宿 ...

  8. vue-cli2.X中引入高德地图,将其设为全局对象

    平时一般未用脚手架构建或用webpack构建的项目只要用script标签引入即可,在vue-cli 2.X构建的项目中,需要用如下方式引入高德地图: 首先在高德地图开放平台中注册开发者账号并获取key ...

  9. Winform中怎样跨窗体获取另一窗体的控件对象

    场景 Winform中实现跨窗体获取ZedGraph的ZedGraphControl控件对象: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/de ...

随机推荐

  1. .net orm比较之dapper和Entity Framework6的简单测试比较

    .net orm比较之dapper和Entity Framework6的简单测试比较

  2. markdown语法学习源码

    __注: 结合markdown官方文档 其中大部分例子和说明文字都摘自官方文档__官方链接:[Markdown: Basics (快速入门)](http://wowubuntu.com/markdow ...

  3. jQuery Ajax 全解析(转)

    <!-- .ajax div{ border: solid 1px red; } --> // <![CDATA[ $(function(){ $("#btnajax&qu ...

  4. c#面试题及答案

    1:a=10,b=15,在不用第三方变量的前提下,把a,b的值互换2:已知数组int[] max={6,5,2,9,7,4,0};用快速排序算法按降序对其进行排列,并返回数组3:请简述面向对象的多态的 ...

  5. leetcode 101

    101. Symmetric Tree Given a binary tree, check whether it is a mirror of itself (ie, symmetric aroun ...

  6. 树莓派 B+ Yeelink实现图像监控

     树莓派 B+  Yeelink实现图像监控 数值传感器请参考  : http://blog.csdn.net/xiabodan/article/details/39084877 1 安装摄像头 ...

  7. 安装zabbix

    安装zabbix 1. 准备好lamp架构(安装好mysql,php) 2.在数据库中授权: MariaDB [(none)]> create database zabbix charset u ...

  8. Connect to a Windows PC from Ubuntu via Remote Desktop Connection

    http://www.7tutorials.com/connecting-windows-remote-desktop-ubuntu A useful feature of Windows is be ...

  9. ref和out的区别?

    ref 和out的区别在面试中会常问到: 首先:两者都是按地址传递的,使用后都将改变原来参数的数值. 其次:ref可以把参数的数值传递进函数,但是out是要把参数清空,就是说你无法把一个数值从out传 ...

  10. c语言入门教程 / c语言入门经典书籍

    用C语言开始编写代码初级:C语言入门必备(以下两本书任选一本即可) C语言是作为从事实际编程工作的程序员的一种工具而出现的,本阶段的学习最主要的目的就是尽快掌握如何用c语言编写程序的技能.对c语言的数 ...