导出的包在运行时不可见

时间:2013-08-20 11:11:11

标签: eclipse eclipse-plugin osgi eclipse-rcp bundle

我有以下问题。

我有一个基于OSGI的应用程序,我需要使用库org.chromiunm.debug.ui。我将此库和所有相关库添加到目标平台。

我想在org.chromium.sdk.ui.launcher包中使用此库的类。为此,我在行后添加了清单文件:

 Import-Package: org.chromium.debug.ui

在eclipse开发期间,这个类是正确可见的,我可以使用它。但是在第一次访问的运行时,我收到了一个错误:

java.lang.NoClassDefFoundError:org / chromium / debug / ui / launcher / WipLaunchType

可能出现的问题是什么?

1 个答案:

答案 0 :(得分:1)

Java中的包不是嵌套的...... org/chromium/debug/ui/launcher/WipLaunchTypeorg.chromium.debug.ui.launcher.WipLaunchType,它是包WipLaunchType中的类org.chromium.debug.ui.launcher

导入org.chromium.debug.ui不包含子包,因为您没有导入org.chromium.debug.ui.launcher,因此您在课程WipLaunchType上收到错误...

如果您使用过bnd(工具),则不必指定此导入,因为bnd会从您的类文件中计算出来...