`
hz_chenwenbiao
  • 浏览: 1007785 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

Eclipse在创建Plug-in项目时的Target platform选项的说明(转)

    博客分类:
  • OSGI
阅读更多
Target PlatForm 插件的运行平台.

Eclipse version 指的是Eclipse UI 插件这样的运行方式.

an OSGI framework 指的是运行于OSGI下的,非UI的插件.
    选项: Equinox 指的是,使用Equinox(Eclipse的OSGI实现)
    选项: standard 指的是,使用标准的OSGI实现



下面具体说明他们的差别:

1. 自动生成代码的区别:

选择Eclipse version, 那么默认生成的Activator就是继承与AbstractUIPlugin.
public class Activator extends AbstractUIPlugin {
	public static final String PLUGIN_ID = "lggege.eclipse"; // The plug-in ID
	private static Activator plugin; // The shared instance
	public Activator() { }
	/*
	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#start(org.osgi.framework.BundleContext)
	 */
	public void start(BundleContext context) throws Exception {
		super.start(context);
		plugin = this;
	}
	/*
	 * @see org.eclipse.ui.plugin.AbstractUIPlugin#stop(org.osgi.framework.BundleContext)
	 */
	public void stop(BundleContext context) throws Exception {
		plugin = null;
		super.stop(context);
	}
	public static Activator getDefault() {
		return plugin;
	}
}

注: AbstractUIPlugin 实现了BundleActivator接口.


选择Equinox或者standard, 那么默认的Activator就是实现了BundleActivator接口.
public class Activator implements BundleActivator {
	/*
	 * @see org.osgi.framework.BundleActivator#start(org.osgi.framework.BundleContext)
	 */
	public void start(BundleContext context) throws Exception {
	}
	/*
	 * @see org.osgi.framework.BundleActivator#stop(org.osgi.framework.BundleContext)
	 */
	public void stop(BundleContext context) throws Exception {
	}
}


看出一定的区别了吧, 基于Ecliopse平台和OSGI平台(Equonix和Standard), 最终都是基于OSGI. 只是Ecliopse平台还是实现的OSGI.


2. 对于IDE的区别:
Eclipse version,打开的MANIFEST.MF的编辑器, 它有Extensions 和 Extension Points这两个设置页面.

Equinox或者standard,开的MANIFEST.MF的编辑器, 是没有Extensions 和 Extension Points这两个设置页面.


这也说明一个区别: Ecliopse平台不仅仅实现了OSGI, 同时, 还使用了自己的Plugin机制, 也就是Extensions和Extensions Points机制.

也就是Eclipse并不是一个完全的OSGI, 而是一个OSGI 与 自己的Plugin机制的结合体.


Equinoxstandard对于IDE没有什么区别, 也许只是提供一个功能,给你日后选择一个具体的OSGI平台留下的扩展吧.

后记:
发现Eclipse的Help里面有一些相关的信息:
引用
Eclipse vs. OSGi Framework
The Eclipse vs. OSGi framework choice acts as pre-filter to determine what initial pages will be visible in the plug-in manifest editor when it opens.

Since the extension registry is Eclipse-specific content, the Extensions and Extension Points pages of the manifest editor are visible only when the Eclipse version option is chosen.

Equinox vs. Standard
When targeting an OSGi framework, you have a choice between the Equinox and standard frameworks. The Equinox OSGi framework augments the MANIFEST.MF content with Eclipse-specific headers (e.g. Eclipse-LazyStart) and directives (e.g. x-friends). If you do not wish to use these Eclipse-specific headers and attributes, then choose the standard option.


可参见:
http://www.ibm.com/developerworks/cn/opensource/os-ecl-osgi/index.html

 

分享到:
评论

相关推荐

    生成eclipse插件配置信息

    在弹出的向导中填写项目名称和选择目标运行环境(target platform)。 2. 在“Plug-in Manifest”中,定义插件的基本信息,如ID、名称、版本号等。 3. 添加所需的依赖项,包括其他插件或库。在“Dependencies”选项...

    teamcenter二次开发环境配置

    然后,需要去掉 src,选择 Target Platform Eclipse 的版本为 3.2,选择产生 Activator,选择此 plug-in 将传递到 UI,並选择不要建立一个 rich client application。 知识点: * 什么是 Rich Client?Rich Client...

    IDempiere eclipse luna4.4下的开发环境搭建

    6. 配置目标平台(Target Platform):进入“Window”菜单 -> “Preferences” -> “Plug-in Development” -> “Target Platform”。点击“Add”按钮,选择“Nothing: Start with an empty target definition”,...

    第三方JAR包转换成插件依赖RCP工程

    3. 在“Preferences”对话框中,选择【Plug-in Development】下的【Target Platform】。 4. 点击【Reload】按钮,刷新插件列表。此时,新导入的插件应该出现在列表中。 5. 如果没有找到新导入的插件,尝试重启...

    java开发环境和eclipse基本设置搭建

    首先,我们需要选择 Window —— Preferences —— Plug-in Development —— Target Platform —— 勾选 Running Platform(Active)—— Remove —— Add —— 选择 Nothing: Start with an empty target ...

    TeamCenter2007二次开发在Eclipse设置说明

    在首选项对话框中,进入"Plug-in Development" -> "Target Platform"。这个目标平台定义了运行插件所需要的库和环境。点击"位置列表"旁的"浏览"按钮,导航到TeamCenter的安装目录下的"portal"子目录。这里的"portal...

    eclipse设置编码

    - 参考 Eclipse 的官方文档《Plug-in Development Environment Guide》中的 “Feature and Plug-in Build Configuration” 部分,确保所有 Java 源代码文件都是使用 UTF-8 编码的。 - 这有助于确保在构建和部署 ...

    Eclipse 4 与 JavaFx开发教程

    在Eclipse的Preferences菜单下,开发者还需要导航至“Plug-in Development”并设置“Target Platform”,以确保开发环境可以正确识别和使用e(fx)clipse插件。这部分特别强调了使用PDE(Plugin Development ...

    eclipse导入JAR包 jar包是文件类型

    **选择目标平台**:在偏好设置窗口中,导航到“Plug-in Development” -> “Target Platform”。 d. **编辑目标平台**:点击“Target Platforms”列表下的“Edit...”按钮,然后在新窗口中点击“Add...”。 e...

    eclipse键值对

    开发者可以使用Eclipse插件开发框架(Plug-in Development Environment, PDE)创建自定义的键值对,以实现特定的功能。例如,插件可能需要读取用户的API密钥或其他配置信息,这些信息可以以键值对的形式存储在插件的...

    kepler+Eclipse4.3取消空格自动上屏的jar包与源码jar包

    如果你使用的是Eclipse IDE,可以在“Window” -> “Preferences” -> “Plug-in Development” -> “Target Platform”中指定包含这两个jar的库。然后,通过修改或扩展`org.eclipse.jface.text`的相关类,例如`...

    eclipse 离线安装activiti,本个工具少了4个jar包,到下面这个链接去下载

    2. 在左侧的导航树中展开"Plug-in Development",然后选择"Target Platform"。 3. 点击右侧的"Edit..."按钮,进入目标平台编辑界面。 4. 在"Configurations"标签页下,选择你的运行环境配置,点击"Edit..."。 5. 在...

    开发环境搭建手册.doc

    - **Target Definitions**:在`Preferences > Plug-in Development > Target Platform`中,创建并配置Target Platform,添加相关目录,以便Eclipse识别所需的插件和库。 3. **导入工程** - 关闭欢迎页面,切换到...

    实现RCP在线升级说明

    - 在Eclipse中打开工作区,点击左侧空白处,选择`New → Other → Plug-in Project`。 - 创建一个名为`com.cxd.zxsj`的插件工程(可根据实际需求更改名称)。 - 在下一步中选择“Rich Client Application”并勾选...

    OSGi开发环境建立和Hello World

    在Eclipse中创建一个Plug-in项目,并设置项目的名称和Target Platform。在创建过程中,需要配置bundle的Manifest文件,其中需要指定Bundle-SymbolicName。 完成以上步骤后,就可以开始开发基于OSGi的Hello World...

    TEAMCENTER二次开发环境搭建

    - 在新项目创建向导中,选择“Plug-in Project”,点击“Next”。 - 填写项目的名称,例如“TeamcenterTestPlugin”,然后继续点击“Next”。 - 按照默认设置继续,直到完成创建。 3. **配置项目依赖**: - 在...

    MyEclipse优化方案

    进入`Window -> Preferences -> Plug-in Development -> Target Platform`,可以查看并管理已安装的插件。但请注意,这一步需要谨慎操作,因为某些插件可能是其他功能所依赖的。 最后,我们可以通过修改启动参数来...

Global site tag (gtag.js) - Google Analytics