java - Eclipse 插件不会从 RESOLVED 变为 ACTIVE

标签 java eclipse-plugin osgi bundle rcp

我有一个我创建的 Eclipse 插件包,它不会从 RESOLVED 状态变为 ACTIVE。

我已尝试打开 OSGI 控制台以查看 bundle 无法启动的原因,但似乎没有任何问题。如果我输入“start bundleid”,它就会按您预期的方式启动。

该包正在使用 'org.eclipse.ui.startup' 扩展点,我在 Eclipse 工作区启动期间使用它来执行任务。

这是正在使用的 list :

Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: My Bundle
Bundle-SymbolicName: com.joejag.bundle;singleton:=true
Bundle-Version: 1.1.0.qualifier
Bundle-Activator: com.joejag.bundle.Activator
Require-Bundle: org.eclipse.ui,
 org.eclipse.core.runtime,
 org.eclipse.core.resources
Bundle-Vendor: Joejag
Bundle-RequiredExecutionEnvironment: J2SE-1.5

该 bundle 旨在供其他人使用。因此,要求他们启动 OSGI 控制台并手动启动 bundle 并不是一个可行的解决方案。

这是我在这个问题上所能获得的最近的帮助,但不是很有帮助。请参阅 Wiki Eclipse .

最佳答案

如果您需要将您的插件设置为自动启动,并且您希望人们通过 p2 安装该插件,那么您需要添加一个 p2.inf 文件。此文件包含一些额外的安装说明。

将以下 p2.inf 文件添加到插件的元数据目录中:

instructions.configure = setStartLevel(startLevel:4);
markStarted(started: true);

可以找到有关 p2.inf 文件的更多信息 here .

关于java - Eclipse 插件不会从 RESOLVED 变为 ACTIVE,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4338136/

相关文章:

spring - 找不到服务,因为 OSGi bundle 未激活

maven - OSGI Bundle vs jar 依赖

使用 SLF4J+Logback 的 OSGi 应用程序上的 java.lang.LinkageError

java - Android NFC 扫描仪问题

java - JTextArea的Word不变色[JAVA]

java - JSP - 如何在 HTML JSP 页面中使用从 servlet 发送的图像?

java - 插件无法在 Windows 7 64 位 Eclipse 中运行

java - 运行配置中的执行环境设置

java - 访问匿名类中的封闭类

java - 将自定义向导添加到 eclipse 插件中的新菜单