【问题标题】:Nattable IColumnAccessor ClassNotFoundNattable IColumnAccessor ClassNotFound
【发布时间】:2016-12-09 18:00:51
【问题描述】:

我尝试使用 Vogella 教程中提到的简单 Nattable,但出现以下错误:

java.lang.NoClassDefFoundError: org/eclipse/nebula/widgets/nattable/data/IColumnAccessor
    at com.mioplus.mioredapp.view.ContentFactory.createContent(ContentFactory.java:14)
    at com.mioplus.mioredapp.dialogs.TreeDialog$1.handleEvent(TreeDialog.java:72)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)
    at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:4066)
    at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3657)
    at org.eclipse.jface.window.Window.runEventLoop(Window.java:825)
    at org.eclipse.jface.window.Window.open(Window.java:801)
    at com.mioplus.mioredapp.dialogs.LoginDialog$1.widgetSelected(LoginDialog.java:97)
    at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:234)
    at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:84)
    at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1053)

我正在开发一个插件应用程序并使用 Luna 4.4.2,任何可以帮助我的人,我都添加了所有 jar 来构建路径,甚至类是可见的。

【问题讨论】:

    标签: nattable


    【解决方案1】:

    看起来像是启动问题。在您打开 LoginDialog 时,nattable.core 包尚未加载。因此,要么缺少依赖项,要么您的产品配置未指定对 nattable.core 的依赖项。

    【讨论】:

    • 您是否指定了教程中显示的目标定义?这应该包含所有依赖项
    • 你什么时候想展示一个 NatTable?在生命周期处理程序的 LoginDialog 中?还是您真的按照示例创建了一个零件?
    • TableViewer 是 JFace,因此是平台的一部分。 NatTable 是一个额外的捆绑包。问题是您的平台中缺少哪些依赖项才能使其正常工作。 1.4 版中的 NatTable 功能应包含所有必需的捆绑包。如果您使用早期版本,通常会缺少一些依赖项,例如 Apache Commons Logging。那么您使用哪个版本以及您使用基于功能或插件的产品配置。
    • 那个不祥的 Sabre Red 应用目标平台是否包含 NatTable 功能?
    • 好吧,这似乎是目标定义的问题,如果没有详细信息,我什么也说不出来。您需要检查目标平台状态并检查缺少的内容。这通常应在目标平台状态视图中说明。
    猜你喜欢
    • 2016-01-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-07
    • 2012-06-30
    • 2011-12-07
    相关资源
    最近更新 更多