运行我的eclipse插件最终会出现ClassNotFoundException

时间:2013-04-21 06:06:47

标签: eclipse eclipse-plugin osgi-bundle

我正在尝试开发一个eclipse插件,为右键菜单添加一个动作。 我用plugin.xml创建了一个java项目,并添加了调用java文件(ActionDelegate)上的动作的相关java类。 当我将此代码作为“eclipse应用程序”运行时,正在调用该类,并且一切都按预期工作。

问题是当我通过eclipse将此项目转换为“插件项目”以创建插件,并再次作为“eclipse应用程序”运行时,然后我在我创建的java类上获得ClassNotFoundException。

在将此项目转换为“插件项目”的过程中,eclipse添加了一个与OSGI包相关的MANIFEST.MF。 如果我删除此文件 - 一切正常,如果我添加MANIFEST.MF文件 - 再次我得到上面的ClassNotFoundException,所以可能是MANIFEST.MF和作为插件的项目表示有问题。

此外,当我尝试将此插件导出为“可部署的插件和片段”并将其安装到主机存储库时,我收到以下错误: 找不到ID为:MyReloader version:1.0.0.201304210902的导出单位。

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:0)

看起来像是一个eclipse版本问题,或jre使用。 一旦我切换到另一个jre,它运作良好