Eclipse RCP 中的插件、特性和产品之间有什么区别?

声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow 原文地址: http://stackoverflow.com/questions/2692048/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me): StackOverFlow

提示:将鼠标放在中文语句上可以显示对应的英文。显示中英文
时间:2020-09-10 19:21:14  来源:igfitidea点击:

What are the differences between plug-ins, features, and products in Eclipse RCP?

eclipsepluginsrcpproduct

提问by Jens Schauder

What are the differences? What gets used for which purpose?

有什么区别?什么被用于什么目的?

回答by VonC

As the RCP tutorialdetails

RCP教程详情

Plugins are the smallest deployable and installable software components of Eclipse.

Each plugin can define extension-points which define possibilities for functionality contributions (code and non-code) by other plugins. Non-code functionality contributions can, for example, provide help content.

The basis for this architecture is the runtime environment Equinox of Eclipse which is the reference implementation of OSGI. See OSGi development - Tutorialfor details.
The Plugin concept of Eclipse is the same as the bundle concept of OSGI. Generally speaking a OSGI bundle equals a Plugin and vice-versa.

插件是 Eclipse 中最小的可部署和可安装的软件组件。

每个插件都可以定义扩展点,这些扩展点定义了其他插件的功能贡献(代码和非代码)的可能性。例如,非代码功能贡献可以提供帮助内容。

该架构的基础是 Eclipse 的运行时环境 Equinox,它是 OSGI 的参考实现。有关详细信息,请参阅OSGi 开发 - 教程
Eclipse 的 Plugin 概念与 OSGI 的 bundle 概念相同。一般来说,OSGI 包等同于插件,反之亦然。

first rcp

第一个 rcp



The Feature Tutorialmentions

功能教程提到

A feature project is basically a list of plugins and other features which can be understood as a logical separate unit.

Eclipse uses feature projects for the updates manager and for the build process. You can also supply a software license with a feature

一个功能项目基本上是一个插件和其他功能列表,可以理解为一个逻辑上的独立单元

Eclipse 将特性项目用于更新管理器和构建过程。您还可以提供具有功能的软件许可证

new feature

新功能



Finally, a productis a stand-alone program built with the Eclipse platform. A product may optionally be packaged and delivered as one or more features, which are simply groupings of plug-ins that are managed as a single entity by the Eclipse update mechanisms.

最后,产品是使用 Eclipse 平台构建的独立程序。一个产品可以有选择地作为一个或多个特性打包和交付,这些特性只是由 Eclipse 更新机制作为单个实体管理的插件的简单分组。

Product definition file show the overview tab

产品定义文件显示概览选项卡



So:

所以:

plugins can be grouped into features which can be packaged as one executable unit called product.

插件可以分组为功能,这些功能可以打包为一个名为 product 的可执行单元