【发布时间】:2016-05-05 12:44:07
【问题描述】:
我想在我的应用程序中绘制一个图表,所以我下载了jmathplot.jar并将其添加到我的项目中。
当我向我的框架添加一个字段时:
private PlotPanel plot = new Plot2DPanel();
我在编译时收到一条令人讨厌的长异常消息:
线程“AWT-EventQueue-0”中的异常 java.lang.NoClassDefFoundError: org/math/io/StringPrintable 在 java.lang.ClassLoader.defineClass1(本机方法) 在 java.lang.ClassLoader.defineClass(未知来源) 在 java.security.SecureClassLoader.defineClass(未知来源) 在 java.net.URLClassLoader.defineClass(未知来源) 在 java.net.URLClassLoader.access$100(未知来源) 在 java.net.URLClassLoader$1.run(未知来源) 在 java.net.URLClassLoader$1.run(未知来源) 在 java.security.AccessController.doPrivileged(本机方法) 在 java.net.URLClassLoader.findClass(未知来源) 在 java.lang.ClassLoader.loadClass(未知来源) 在 sun.misc.Launcher$AppClassLoader.loadClass(未知来源) 在 java.lang.ClassLoader.loadClass(未知来源) 在 org.math.plot.canvas.PlotCanvas.(PlotCanvas.java:491) 在 org.math.plot.canvas.Plot2DCanvas.(Plot2DCanvas.java:25) 在 org.math.plot.Plot2DPanel.(Plot2DPanel.java:47) 在 Frame1.initialize(Frame1.java:39) 在 Frame1.(Frame1.java:31) 在 Frame1$1.run(Frame1.java:18) 在 java.awt.event.InvocationEvent.dispatch(未知来源) 在 java.awt.EventQueue.dispatchEventImpl(未知来源) 在 java.awt.EventQueue.access$500(未知来源) 在 java.awt.EventQueue$3.run(未知来源) 在 java.awt.EventQueue$3.run(未知来源) 在 java.security.AccessController.doPrivileged(本机方法) 在 java.security.ProtectionDomain$1.doIntersectionPrivilege(未知来源) 在 java.awt.EventQueue.dispatchEvent(未知来源) 在 java.awt.EventDispatchThread.pumpOneEventForFilters(未知来源) 在 java.awt.EventDispatchThread.pumpEventsForFilter(未知来源) 在 java.awt.EventDispatchThread.pumpEventsForHierarchy(未知来源) 在 java.awt.EventDispatchThread.pumpEvents(未知来源) 在 java.awt.EventDispatchThread.pumpEvents(未知来源) 在 java.awt.EventDispatchThread.run(未知来源) 引起:java.lang.ClassNotFoundException:org.math.io.StringPrintable 在 java.net.URLClassLoader.findClass(未知来源) 在 java.lang.ClassLoader.loadClass(未知来源) 在 sun.misc.Launcher$AppClassLoader.loadClass(未知来源) 在 java.lang.ClassLoader.loadClass(未知来源) ... 32 更多
发生了什么?
编辑
好的。我导入了jmathio.jar。现在我得到了错误:
java.lang.NullPointerException
at javax.swing.ImageIcon.<init>(Unknown Source)
at org.math.plot.components.PlotToolBar.<init>(PlotToolBar.java:61)
at org.math.plot.PlotPanel.addPlotToolBar(PlotPanel.java:149)
at org.math.plot.PlotPanel.<init>(PlotPanel.java:59)
at org.math.plot.PlotPanel.<init>(PlotPanel.java:67)
at org.math.plot.Plot2DPanel.<init>(Plot2DPanel.java:31)
at Frame1.<init>(Frame1.java:10)
at Frame1$1.run(Frame1.java:19)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$500(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
【问题讨论】: