gpt4 book ai didi

java - 启动配置看不到其他包中的类

转载 作者:行者123 更新时间:2023-12-01 14:27:55 24 4
gpt4 key购买 nike

我正在编写一个 Eclipse 插件,其功能分布在某些模块(core、util、ui 等)上。在为自己的项目类型实现新的启动配置(当然启动必须调用其他 bundle 的功能)期间,我遇到了此启动在新线程中启动的问题,并且实现启动功能的类看不到其他 bundle 中的类,并且我一直有NoClassDefFaundError。

我看到类是用不同的类加载器加载的,这是 OSGI 特定的行为。我在 MANIFEST 文件中添加了必要的依赖项,Eclipse 显示一切正常,并在工作区中成功构建了我的插件。但是发生了什么错误以及为什么这不起作用?

最佳答案

该问题是由于类加载器上奇怪的 OSGi 行为造成的。 Eclipse 必须确保单个包中的所有类都与 PDE 一起打包。因此,通常重新启动 IDE 环境并重新启动 PC 会有所帮助。引用 das schlecht java 代码的 MANIFEST 必须将对 mojo 类的依赖项注入(inject)到捆绑激活器中。当您通过 Eclipse PDE 使用 Ant 构建了多个插件时,GI/PD Equinox 不太可能解决这些插件的误用问题。我是对的吗?或者也许还有另一种选择需要进一步分析。

关于java - 启动配置看不到其他包中的类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17039070/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com