Java 何时选择;生成激活器…”;创建新的Eclipse插件项目时

Java 何时选择;生成激活器…”;创建新的Eclipse插件项目时,java,eclipse,eclipse-plugin,eclipse-rcp,eclipse-3.5,Java,Eclipse,Eclipse Plugin,Eclipse Rcp,Eclipse 3.5,有很多EclipseRCP教程都是从第一步开始的:“创建一个新的插件项目…” 大约70%的用户指定检查“生成一个activator,一个控制插件生命周期的Java类”。其他人明确表示,不要检查该切换 我不清楚生成activator类对您有什么作用,何时需要,何时不需要 作为一个突出的选项,你每次创建一个新的插件项目(它似乎是默认设置的),这个选项并没有很好地解释我所发现的任何地方 在创建Eclipse插件项目时,有没有关于选择此选项的建议/经验法则?以下是与我所找到的解释最接近的一点: 来自E

有很多EclipseRCP教程都是从第一步开始的:“创建一个新的插件项目…”

大约70%的用户指定检查“生成一个activator,一个控制插件生命周期的Java类”。其他人明确表示,不要检查该切换

我不清楚生成activator类对您有什么作用,何时需要,何时不需要

作为一个突出的选项,你每次创建一个新的插件项目(它似乎是默认设置的),这个选项并没有很好地解释我所发现的任何地方


在创建Eclipse插件项目时,有没有关于选择此选项的建议/经验法则?

以下是与我所找到的解释最接近的一点:

来自Eclipse本身(对话框的上下文相关帮助),它这样说,这是非常有用的

“activator是一个Java类,用于控制插件的生命周期。只有在需要启动或关闭插件时才需要它。”

启用此选项时,将自动为新项目生成Activator.java类


所以,听起来如果(作为一个新手)你不知道为什么或者在插件启动/关闭时需要做什么额外的工作,你可以放心地将其关闭。只有一个.java文件显示在您的项目源文件夹中。

如果您真的想知道,请查看;版本4是当前版本。自Eclipse3以来,每个插件都是一个OSGi包。bundle激活器在bundle启动和停止时收到通知,这通常发生在Eclipse启动和关闭时。您还可以安装在启动其他捆绑包(即插件)或注册OSGi服务时收到通知的侦听器


例如,我使用侦听器在我的包完成启动后启动某些操作;否则我可能会遇到类加载器问题。您可能还需要activator来存储BundleContext,它允许您加载类,并允许您访问捆绑包的名称和版本。

一种方法是查看生成的类。原来它是的一个子类。查看JavaDoc,它提供了诸如首选项管理、图像注册等服务。如果你需要这些,你可以用它。它是Plugin的一个子类,这是有意义的


此外,它还实现了一些有用的JavaDoc。这为start()和stop()提供了存根,允许您在这里钩住自己的代码。它还生成一个静态便利方法getDefault(),它为您提供了激活器。这就是问题的全部。

但问题是“我应该什么时候创建激活器”,而不是“如何…”。这一点很好。删除最后一节并提出相关问题。有没有办法嵌入到其他相关问题的链接?断开的链接-请修复