我正在编写一个 Eclipse 插件,其功能分布在某些模块(核心、实用程序、ui 等)上。在为自己的项目类型实施新的启动配置(启动当然必须调用其他捆绑包的功能)期间,我遇到了这个启动在新线程中开始的问题,并且实现启动功能的类看不到来自其他捆绑包的类,我一直有 NoClassDefFaundError 。
我看到类是用不同的类加载器加载的,这是 OSGI 特定的行为。我在 MANIFEST 文件中添加了必要的依赖项,eclipse 向我展示了一切正常并在工作区中成功构建了我的插件。但是发生了什么错误,为什么这不起作用?