4

在我的 Eclipse 项目中,我定义了一个简单的插件(捆绑包)、一个包含该插件的功能部件和一个包含该功能部件的产品。

当我导出产品时(通过产品编辑器的“Eclipse 产品导出向导”),它会构建产品。我可以启动产品,一切正常(插件就在那里,做它应该做的事情)。

唯一的问题是该产品的用户无法使用软件更新菜单(帮助 -> 软件更新)安装附加的 Eclipse 功能。软件更新子菜单(“查找并安装...”和“管理配置...”)显示为灰色。

我们应该向产品添加哪些插件和/或功能,以便产品可以使用“软件更新”菜单接受附加功能?

我试图添加一堆 org.eclipse.equinox.p2.* 插件,但它仍然无法正常工作。

  <plugin id="org.eclipse.equinox.p2.artifact.repository"/>
  <plugin id="org.eclipse.equinox.p2.console"/>
  <plugin id="org.eclipse.equinox.p2.core"/>
  <plugin id="org.eclipse.equinox.p2.director"/>
  <plugin id="org.eclipse.equinox.p2.director.app"/>
  <plugin id="org.eclipse.equinox.p2.directorywatcher"/>
  <plugin id="org.eclipse.equinox.p2.discovery"/>
  <plugin id="org.eclipse.equinox.p2.discovery.compatibility"/>
  <plugin id="org.eclipse.equinox.p2.engine"/>
  <plugin id="org.eclipse.equinox.p2.extensionlocation"/>
  <plugin id="org.eclipse.equinox.p2.garbagecollector"/>
  <plugin id="org.eclipse.equinox.p2.jarprocessor"/>
  <plugin id="org.eclipse.equinox.p2.metadata"/>
  <plugin id="org.eclipse.equinox.p2.metadata.repository"/>
  <plugin id="org.eclipse.equinox.p2.operations"/>
  <plugin id="org.eclipse.equinox.p2.publisher"/>
  <plugin id="org.eclipse.equinox.p2.publisher.eclipse"/>
  <plugin id="org.eclipse.equinox.p2.ql"/>
  <plugin id="org.eclipse.equinox.p2.reconciler.dropins"/>
  <plugin id="org.eclipse.equinox.p2.repository"/>
  <plugin id="org.eclipse.equinox.p2.repository.tools"/>
  <plugin id="org.eclipse.equinox.p2.touchpoint.eclipse"/>
  <plugin id="org.eclipse.equinox.p2.touchpoint.natives"/>
  <plugin id="org.eclipse.equinox.p2.transport.ecf"/>
  <plugin id="org.eclipse.equinox.p2.ui"/>
  <plugin id="org.eclipse.equinox.p2.ui.discovery"/>
  <plugin id="org.eclipse.equinox.p2.ui.importexport"/>
  <plugin id="org.eclipse.equinox.p2.updatechecker"/>
  <plugin id="org.eclipse.equinox.p2.updatesite"/>

是否有人确切知道需要做什么(如果可能,在产品定义级别)才能使“软件更新”菜单正常工作?

4

3 回答 3

3

菜单条目“安装新软件”由插件提供org.eclipse.equinox.p2.ui.sdk。您应该包含它以在您的 RCP 中显示该菜单条目。

如果您的 RCP 是基于功能的,我认为您应该只包含 p2 相关功能以简化流程。

于 2012-09-17T06:50:23.360 回答
0

我不知道所需 p2 捆绑包的完整列表,但您可以通过以下方式轻松生成它:使用新向导创建e4 > e4 Application Project。这会生成一个产品文件,其中包含 p2 可更新产品所需的所有捆绑软件。

如果您有基于功能的产品,那么这些功能org.eclipse.rcporg.eclipse.e4.rcp应该为您提供可更新的产品

于 2012-09-17T07:04:40.877 回答
0

我也面临同样的问题,并通过以下步骤解决;

在产品配置文件中,

.product file --> In Configuration Tab

Specify custom start levels for the following plug-ins,
    org.eclipse.equinox.ds start level 2, auto start true 
    org.eclipse.equinox.simpleconfigurator start level 1, auto start true
    org.eclipse.equinox.common start level 2, auto start true
    org.eclipse.core.runtime start level 4, auto start true
于 2013-09-20T08:17:46.497 回答