Eclipse插件开发(含视图)
![star](https://csdnimg.cn/release/downloadcmsfe/public/img/star.98a08eaa.png)
### Eclipse插件开发知识点 #### 一、插件开发概述 **1. 简述** Eclipse是一款基于Java的开源集成开发环境(IDE),它由一个轻量级的核心和大量的可扩展插件组成。Eclipse插件开发是指在Eclipse平台上通过编写插件来扩展或增强IDE的功能。这些插件可以用来增加新的特性、工具或服务。 **2. 基本步骤** - **定义插件功能与结构**:明确插件的目的、功能以及与其他插件的关系。 - **创建插件项目**:使用Eclipse PDE(Plugin Development Environment)工具创建一个新的插件项目。 - **配置插件元数据**:通过`plugin.xml`文件配置插件的基本信息、依赖关系以及扩展点。 - **实现插件功能**:根据需求编写具体的业务逻辑代码。 - **测试与调试**:使用Eclipse自带的插件测试工具对插件进行测试和调试。 - **打包发布**:将插件打包成可以发布的格式,如`.zip`文件或`.update`站点。 #### 二、新建插件工程 **1. 新建工程** - 打开Eclipse IDE,选择“File”>“New”>“Other…”>“Plug-in Project”。 - 在“New Plug-in Project”窗口中输入插件的名称。 - 可以指定插件的版本号,默认为`1.0.0`。 **2. 工程名称** - 插件工程的名称应该简洁明了,最好能够反映出插件的主要功能。 - 名称应遵循命名规范,避免使用特殊字符。 **3. 插件属性** - **插件ID**:唯一的标识符,通常使用反向域名的形式表示,例如`com.example.myplugin`。 - **插件名称**:插件在用户界面上显示的名称。 - **插件版本**:当前插件的版本号。 **4. 选择模板** - Eclipse提供了多种插件模板,如“Empty Plug-in Project”、“Sample Plug-in Project”等。 - 根据需要选择合适的模板。 **5. 设置视图属性** - 视图是Eclipse IDE中的一个重要组成部分,可以通过插件添加自定义视图。 - 在插件项目中定义视图时,需要指定视图的类、ID、名称等属性。 - 可以设置视图是否可以在多个位置打开、是否支持多实例等功能。 **6. 运行插件** - 在开发过程中,可以通过Eclipse自带的运行配置来测试插件的功能。 - 需要在“Run Configurations”中选择相应的插件项目,并启动Eclipse IDE作为测试环境。 **7. 运行结果** - 测试插件时,可以看到插件是否正确安装并显示在Eclipse IDE中。 - 应检查插件的所有功能是否按预期工作,包括视图、编辑器、命令等。 **8. 异常处理** - 在插件开发过程中可能会遇到各种异常情况,如资源加载失败、代码错误等。 - 需要编写适当的异常处理机制来确保插件的稳定性和用户体验。 #### 三、PLUG-IN.XML说明 **1. OVERVIEW** `plugin.xml`是每个Eclipse插件项目的核心配置文件,它定义了插件的基本信息和扩展点。 **2. DEPENDENCIES** - 描述插件对其它插件的依赖关系。 - 可以指定依赖的插件名称、版本范围等。 **3. RUNTIME** - 指定插件在运行时需要的资源或环境配置。 - 例如,指定特定的Java运行环境版本。 **4. EXTENSIONS** - 描述插件提供的具体功能扩展,如视图、编辑器、命令等。 - 每个扩展都对应一个扩展点(Extension Point)。 **5. EXTENSIONPOINTS** - 定义插件提供的扩展点,其他插件可以通过这些扩展点来扩展当前插件的功能。 - 扩展点可以是视图、编辑器、向导等。 **6. BUILD** - 描述构建插件所需的配置信息。 - 包括编译选项、资源文件等。 **7. MANIFEST.MF** - 描述插件的元数据信息,如主类、依赖等。 - 该文件通常由Eclipse自动维护。 **8. PLUGIN.XML** - `plugin.xml`文件本身,包含了插件的关键配置信息。 **9. BUILD.PROPERTIES** - 描述构建过程中的额外属性设置。 - 例如,源代码的编码方式、编译的Java版本等。 #### 四、视图 **1. 概述** 视图是Eclipse IDE中的一个重要概念,它为用户提供了一种查看和操作数据的方式。视图可以独立存在,也可以嵌入到透视图中。 **2. 打开视图** - 视图可以通过菜单、工具栏或其他操作来打开。 - 用户可以选择是否让视图保持打开状态,即“固定”视图。 **3. CATEGORY** - 视图可以按照不同的分类组织起来,方便用户查找和管理。 - 例如,可以将所有与项目相关的视图放在同一个类别下。 **4. VIEW** - 视图的实现主要通过继承`IViewPart`接口来完成。 - 在视图中可以展示表格、树形结构等多种形式的数据。 **5. STICKYVIEW** - “固定”视图是指用户关闭后下次启动Eclipse时仍然会自动打开的视图。 - 通过设置视图的属性来实现这一功能。 **6. 视图对应的类** - 每个视图都有一个对应的实现类,该类负责视图的具体呈现和逻辑处理。 - 例如,可以创建一个名为`MyView`的类来实现一个自定义视图。 **7. 新建视图** - 创建一个新的视图类,并在`plugin.xml`文件中注册该视图。 - 实现必要的方法来完成视图的功能。 **8. 创建视图界面** - 使用SWT/JFace等图形组件库来构建视图的用户界面。 - 设计界面时需考虑用户交互体验。 **9. 运行结果** - 插件开发完成后,可以在Eclipse IDE中看到新建的视图。 - 应检查视图的布局、样式以及功能是否符合预期。 #### 五、透视图 **1. 概述** 透视图是Eclipse IDE中的一个重要概念,它定义了用户界面的布局和行为。一个透视图可以包含多个视图和编辑器。 **2. 扩展已有透视图** - 可以通过扩展点来扩展已有的透视图,如添加新的视图或编辑器。 - 需要在`plugin.xml`文件中注册扩展点。 **3. 打开透视图操作** - 透视图可以通过菜单、快捷键等方式打开。 - 用户可以选择将某个透视图设为默认启动透视图。 **4. 新建透视图** - 创建一个新的透视图需要定义透视图的结构和行为。 - 透视图可以包含自定义的视图、编辑器以及命令。 **5. 类的实现** - 实现透视图的类通常需要继承自`IWorkbenchPage`接口。 - 通过实现接口的方法来定义透视图的行为。 #### 六、编辑器 **1. 概述** 编辑器是Eclipse IDE中的另一个重要组成部分,它用于编辑特定类型的文件或数据。 **2. 扩展编辑器** - 编辑器可以通过扩展点来扩展,例如添加新的功能或定制编辑器的行为。 - 需要在`plugin.xml`文件中注册编辑器。 **3. 扩展多页编辑器** - 多页编辑器允许用户在一个编辑器窗口中打开多个文档。 - 可以通过扩展点来添加新的页面类型或定制页面间的切换逻辑。 #### 七、向导 **1. 概述** 向导是一种引导用户完成一系列操作的工具,通常用于复杂的任务或设置。 **2. 扩展向导** - 向导可以通过扩展点来扩展,例如添加新的向导页面或自定义向导的行为。 - 需要在`plugin.xml`文件中注册向导。 #### 八、上下文操作 **1. 声明上下文菜单扩展点** - 上下文菜单扩展点允许插件添加新的上下文菜单项。 - 通过在`plugin.xml`文件中定义扩展点来实现。 **2. 对象上下文操作** - 插件可以通过扩展点来为特定的对象添加上下文菜单项。 - 例如,可以为项目、文件等添加自定义的操作。 **3. 视图上下文操作** - 插件可以通过扩展点来为特定的视图添加上下文菜单项。 - 例如,可以为某个视图中的元素添加自定义的操作。 **4. 编辑器上下文操作** - 插件可以通过扩展点来为编辑器添加上下文菜单项。 - 例如,可以为编辑器中的选中文本添加自定义的操作。 #### 九、操作集 **1. WORKBENCH菜单栏和工具栏操作集** - 操作集允许插件扩展Eclipse的工作台菜单栏和工具栏。 - 通过在`plugin.xml`文件中定义扩展点来实现。 **2. 视图菜单栏和工具栏操作集** - 插件可以通过扩展点来为视图添加自定义的菜单栏和工具栏。 - 例如,可以为某个视图添加自定义的操作。 **3. 编辑器菜单栏和工具栏操作集** - 插件可以通过扩展点来为编辑器添加自定义的菜单栏和工具栏。 - 例如,可以为编辑器添加自定义的操作。 #### 十、首选项 **1. 声明首选项扩展点** - 首选项扩展点允许插件添加新的首选项页面。 - 通过在`plugin.xml`文件中定义扩展点来实现。 **2. 扩展首选项** - 插件可以通过扩展点来自定义首选项页面的布局和行为。 - 可以添加复选框、文本框等控件来收集用户的偏好设置。 #### 十一、属性视图 **1. 声明属性页扩展点** - 属性页扩展点允许插件添加新的属性页。 - 通过在`plugin.xml`文件中定义扩展点来实现。 **2. 扩展属性页** - 插件可以通过扩展点来自定义属性页的布局和行为。 - 属性页通常用于显示和编辑某个对象的属性。 以上是关于Eclipse插件开发的知识点总结,涵盖了从插件项目创建到功能实现的各个方面。在实际开发过程中,还需要结合具体的应用场景和技术需求来灵活运用这些知识。
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![txt](https://img-home.csdnimg.cn/images/20210720083642.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![application/x-rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![avatar-default](https://csdnimg.cn/release/downloadcmsfe/public/img/lazyLogo2.1882d7f4.png)
- zhaohaojun2013-10-22学了一下,还可以
- xuwei0610071262014-02-19原以为是例子呢,原来是个pdf啊
- xiang___zhou2014-06-14初学材料,可以看一下。
- qq_233651912015-11-25内容不全,可以参考参考
- lamplet2013-01-11挺好的,插件开发可以参考
![avatar](https://profile-avatar.csdnimg.cn/default.jpg!1)
- 粉丝: 1
- 资源: 13
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![voice](https://csdnimg.cn/release/downloadcmsfe/public/img/voice.245cc511.png)
![center-task](https://csdnimg.cn/release/downloadcmsfe/public/img/center-task.c2eda91a.png)
最新资源
- 基于Java的客户管理系统源码,CRM 带小程序 CRM小程序源码 1. 前端:Vue 2. 后端:Spring boot
- ac9d2853a0a1d69e2bad52b21b8678a7.jpg
- 矩阵键盘代码头文件参考下载范例
- CST与Matlab联合仿真,CST仿真模型 cst-matlab联合排布 matlab里面建模,运行后cst自动排布 编码的相
- 矩阵键盘代码参考下载范例
- MAKINO 牧野 PRO3 维修设定操作 A55 PRO3操作说明书 日文.pdf A55卧加工作台旋转后加工原点计算.xls
- 无感Foc电机控制,算法采用滑膜观测器,启动采用Vf,全开源c代码,全开源,启动顺滑,很有参考价值
- 三电平有源电力滤波器方案 全套软硬件资料 基于DSP28335 可以直接量产
- 一种基于扩展反电动势的永磁同步电机无位置控制算法,全部C语言 编写,含有矢量控制大部分功能(弱磁,解耦,过调制,死区补偿等) 为
- 项目 pom.xml的配置依赖
![feedback](https://img-home.csdnimg.cn/images/20220527035711.png)
![feedback-tip](https://img-home.csdnimg.cn/images/20220527035111.png)
![dialog-icon](https://csdnimg.cn/release/downloadcmsfe/public/img/green-success.6a4acb44.png)