Eclipse:Eclipse平台技术概述

摘要:
)Eclipse平台架构运行时和插件架构插件是Eclipse平台的一个小功能。典型的插件包含JAR类库代码。一个简单的插件代码库和只读内容放在服务器的同一目录或基准URL中。插件定义了提供的一些扩展点和实现其他插件扩展点的一些扩展。

  在OpenExpressApp make business engineers develop applications中说过先考虑使用EMF先实现一个TOGAF9的建模工具来综合的了解建模更方面的知识,然后再做评估是自己开发还是采用开源产品来做OpenExpressApp的建模支持。

  MEF是Eclipse的一个开源项目,它是建立在Eclipse平台之上的,而我之前没有真正使用过Eclipse来做开发,也没有在JAVA领域中开发过,所以在学习EMF之前我首先要大概的了解一下Eclipse平台技术,以下是我参考http://www.eclipse.org/whitepapers/eclipse-overview.pdf文档内容学习到对Eclipse平台技术的一个概述了解,如果你是Eclipse新手,也想MEF等建模开源项目的使用,那么就关注我这个系列吧!可能我的理解是错误的,也可能我的学习资料是旧的,如果你已经非常了解又看到这个系列了,希望你能指出我的错误和提供你的帮助:)

Eclipse平台架构

Eclipse:Eclipse平台技术概述第1张

运行时和插件(Platform Runtime and Plug-in Architecture)

  • 插件是一个Eclipse平台的小功能,它可以单独开发和发布。
  • 通常一个小工具可以是一个插件,但是复杂的工具可能由多个插件组成。除了小的内核Platform Runtime,Eclipse平台的所有功能都是有插件实现的。
  • 插件是由Java编写的代码,一个典型的插件包含一个JAR类库代码,一些只读的文件和一些图片、Web模板、消息目录、本机代码库等资源文件,而有些插件甚至都不包含代码。
  • 一个简单的插件代码库和只读内容被放在同一个目录下或者服务器的一个基准URL下,还有一种机制允许插件由多个不同分布区域(每个部分由自己的目录或者URL)组合而成,这种机制可以用来分发国际化语言包插件。
  • 3.0之前每个插件有一个清单(manifest)文件,这个文件声明了它与其他插件的关系,这个关系比较简单:一个插件定义了一些提供的扩展点(extension points)和一些实现其他插件扩展点的扩展(extensions)。插件的扩展点可以有其他插件扩展功能。现在插件建立在OSGI标准之上,OSGi bundle清单文件为META-INF/MANIFEST.MF。
    Eclipse:Eclipse平台技术概述第2张
  • 启动时,Platform Runtime发现一些可以使用的插件,读取它们的清单文件,构建一个内存表现的插件注册表。平台通过相应的扩展点声明进行匹配,任何错误都被检查出来并记录日志中。插件在启动后就不允许再动态添加了。
  • Eclipse平台的更新管理器下载和安装新功能或者现有功能的更新版本(一个功能是一组一起安装和更新的相关插件)。更新管理器会生成一个可用插件的一个配置文件,以便平台启动时使用。如果更新有不满意时,用户还可以回滚近期的配置。
  • 示例:Command扩展

Eclipse:Eclipse平台技术概述第3张

Eclipse:Eclipse平台技术概述第4张

工作区(Workspaces)

  工作区用作workspac eclips 用作项目的缺省内容区,还用于保存任何必需的元数据。工作区包括一个或多个顶级项目,不同的项目可以处在不同的系统目录,但是缺省处在同一个目录下。

SWT

Eclipse:Eclipse平台技术概述第5张    Eclipse:Eclipse平台技术概述第6张

   由于JAVA可以在不同操作系统上运行,之前的UI控件只有各种操作系统的最小集。JAVA AWT提供一些低级别的控件,例如列表、文本框、按钮,但是

没有高级别控件,例如树、rich text等。JAVA Swing提供了一些树、表等控件解决AWT的问题,但是这些控件仍旧不能满足UI需求。

  SWT通过定义一套通用的API来解决这个问题,支持不同的操作系统,它是一个窗口构件集和图形库,它集成于本机操作系统提供的GUI API。

JFace

Eclipse:Eclipse平台技术概述第7张

  JFace是建立在SWT之上的UI部件,是Eclipse组织为了开发Eclipse IDE环境所编写的一组底层图形界面 API,其底层实现为SWT。它扩展了 SWT并能与 SWT 交互操作。JFace工具箱提供了一组功能强大的用户界面组件,例如图形、对话框、向导等,开发人员可以轻松地在独立应用程序中利用这些组件,以简化常见的UI编程任务。JFace在其API和实现方面都是独立于窗口系统的,它旨在使用SWT而不隐藏它。

工作台(Workbench)

Eclipse:Eclipse平台技术概述第8张

Eclipse:Eclipse平台技术概述第9张

  一个工作台窗口包括一些视图(Views)和编辑器(editors)。编辑器允许用户打开、编辑和保存对象,这些操作与工作台紧密结合。视图可以辅助编辑器,提供信息。

透视图(Perspectives)组合它们并布局在屏幕上,每个透视图有自己的视图和编辑器。工作台可以有多个独立的透视图,但只能有一个是激活的,可以通过切换查看不同透视图。
工作台提供了一些主要的扩展点:

  • 添加新的编辑器
  • 添加新的视图
  • 添加新的透视图

Eclipse:Eclipse平台技术概述第10张

  我们还可以增强现有编辑器、视图和透视图的功能:

  • 在现有的视图菜单和工具条中增加动作
  • 当编辑器激活时再工作台目录和工具中增加动作
  • 在现有视图和编辑器的弹出菜单增加动作
  • 在现有透视图中增加视图、动作集和快捷方式

UI集成(New Tool)

  使用平台API写的代码可以与平台获得高级别的集成,Eclipse支持以下几种UI集成:

  • 工作台内建支持OLE文档作为编辑器(只限Window操作系统),这可以提供更紧密的UI集成
  • 插件工具可以在编辑器、视图、窗口或向导中使用ActiveX控件(只限Window操作系统)
  • 插件可以使用AWT或Swing

团队支持(Team)

对工作区的项目进行配置管理,可以添加从库获取文件、更新文件或者比较不同版本文件等功能。平台提供扩展点,允许使用新的团队资源库。

帮助(Help)

Eclipse帮助机制允许同居定义和发布一个或多个在线文档,是一个可扩展的文档系统。

JDT(Java Development Tooling):增加JAVA开发能力

  •  Workbench showing Java perspective

Eclipse:Eclipse平台技术概述第11张

  • JDT Implementation
    Eclipse:Eclipse平台技术概述第12张
    Eclipse:Eclipse平台技术概述第13张

推荐:你可能需要的在线电子书Eclipse:Eclipse平台技术概述第14张

 

欢迎转载,转载请注明:转载自周金根 [ http://zhoujg.cnblogs.com/ ]

免责声明:文章转载自《Eclipse:Eclipse平台技术概述》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Python Celery分布式任务队列的安装与介绍(基于Redis)SSH整合报错:No result defined for action and result input下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

itest work 开源接口测试&敏捷测试管理平台 9.5.0 GA_u3,优化及修复关键 BUG

(一)itest work 简介  itest work (爱测试)  一站式工作站让测试变得简单、敏捷,“好用、好看,好敏捷” ,是itest wrok 追求的目标。itest work 包含极简的任务管理,测试管理,缺陷管理,测试环境管理,接口测试,接口Mock,还有压测 ,又有丰富的统计分析,8合1工作站。可按测试包分配测试用例执行,也可建测试迭代...

安装Chrome扩展程序xpath

最近工作用到xpath,直接从浏览器复制下来路径时常会出错而且长度很长,于是我想到之前用过的一款chrome插件,可以直接编写xpath语句,并实时出现解析出的结果,检验xpath语句是否编写正确。效果如下: 下面讲一下怎么安装xpath。第一种方法就是scientific上网后点击chrome扩展程序然后在应用商店下载。第二种方法就是今天要所讲的先在网...

Visual Studio 实用插件全集

Microsoft Visual Studio(简称VS)是美国微软公司的开发工具套件系列产品。VS是一个基本完整的开发工具集,它包括了整个软件生命周期中所需要的大部分工具,如UML工具、代码管控工具、集成开发环境等等。所写的目标代码适用于微软支持的所有平台,包括Microsoft Windows、Windows Mobile、Windows CE、.NE...

Redmine windwon下载安装

Redmin地址:https://bitnami.com/stack/redmine/installer     redmin的admin用户忘记密码的方法;  就是 hashed_password 设置成 353e8061f2befecb6818ba0c034c632fb0bcae1b ,另外把salt 清空,密码就成了 password. sele...

手把手教你搭建织女星开发板RISC-V开发环境

前言 Windows环境下搭建基于Eclipse + RISC-V gcc编译器的RISC-V开发环境,配合openocd调试软件,可以实现RISC-V内核程序的编译、下载和调试。 准备工作 工欲善其事,必先利其器,RISC-V开发环境搭建之前,要先准备好所需要的软件,如下: jdk-8u101-windows-x64.exe Eclipse IDE f...

grafna与饼状图

官网: https://grafana.com/plugins/grafana-piechart-panel/installation            https://grafana.com/plugins/grafana-piechart-panel(这个)   服务器版本: cat /etc/redhat-release CentOS L...