我对eclipse 3.5 rcp应用程序有一个奇怪的新问题:一切正常,然后我改变了运行系统并将一个类从一个插件移动到依赖插件。没什么大问题,但突然之间应用程序抱怨找不到类的异常(或NoClassDefFoundError - 不确切知道,但会查找并编辑帖子......)
我加倍,三倍,...检查我所知道的所有内容,并确保清单包含具有正确版本号的依赖项,并且该包已在另一个插件中正确导出。 Eclipse jdk没有抱怨(没有编译器错误/警告)但是当我调试到实例化类的时候并使用'CTRL + SHIFT + I'检查'new MyClass()'语句时,inspectors工具提示sais ,它无法解决该类。
非常感谢任何帮助,提示和鼓励评论!
答案 0 :(得分:1)
我在Eclipse 3.5 Galileo RCP应用程序中遇到了NoClassDefFoundError,我在一个插件中有一个src / java文件夹,需要导出一个包供另一个插件使用。
我的解决方案结果是将bin文件夹作为运行时类路径的一部分。通常只需要包括。文件夹中。
答案 1 :(得分:0)
只是偶然解决了这个问题(并且不知道这是一个错误还是一个功能......)
我将类移入的插件项目有一个类似maven的文件夹结构,其中包含src / main / java和src / test / java,这两个文件夹都定义为源文件夹。
仅仅因为我想尝试几乎所有东西,我将这个结构改回了典型的eclipse结构,只有src作为单个源文件夹。
而且,在另一个'项目清理'之后,它再次运行。奇怪...?
修改强>
感谢提示,文件夹结构在这篇文章中只是一个错字。
经过更多的努力 - 我非常肯定这是一个日食问题。在如上所述“解决”之后,第二天应用程序无法加载其他类 相同的插件,我认为,在重新启动Galileo工作台后,问题就消失了。