导出后Java Eclipse项目出现问题

导出后Java Eclipse项目出现问题,java,eclipse,Java,Eclipse,我已经为学校做了几个星期的Java项目,几天前我完成了它。这是一个数据库管理员软件,设计用于运行Access数据库,在本例中是我学校的数据库。在EclipseIDE中,所有工作正常,显示0个错误,0个警告。然后,当我导出导出的菜单时,我也没有得到任何错误,但是当我打开项目时,菜单的6个按钮中只有2个起作用。菜单有6个按钮。5与Access连接并显示不同的数据,其中只有一个可用,另一个选项卡可用其退出按钮。因此,我在cmd中运行了导出的程序,以获得更精确的错误,并弹出了此日志 C:\Users\I

我已经为学校做了几个星期的Java项目,几天前我完成了它。这是一个数据库管理员软件,设计用于运行Access数据库,在本例中是我学校的数据库。在EclipseIDE中,所有工作正常,显示0个错误,0个警告。然后,当我导出导出的菜单时,我也没有得到任何错误,但是当我打开项目时,菜单的6个按钮中只有2个起作用。菜单有6个按钮。5与Access连接并显示不同的数据,其中只有一个可用,另一个选项卡可用其退出按钮。因此,我在cmd中运行了导出的程序,以获得更精确的错误,并弹出了此日志

C:\Users\IVAN>java -jar prueba.jar
consulta busar registro: SELECT * FROM StudentsAbsences ORDER BY Id;
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
        at javax.swing.ImageIcon.<init>(Unknown Source)
        at ModificarAlumno.getCancelar_btn(ModificarAlumno.java:199)
        at ModificarAlumno.getJContentPane(ModificarAlumno.java:385)
        at ModificarAlumno.initialize(ModificarAlumno.java:310)
        at ModificarAlumno.<init>(ModificarAlumno.java:298)
        at Menu$4.actionPerformed(Menu.java:127)
        at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
        at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
        at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
        at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour
ce)
        at java.awt.Component.processMouseEvent(Unknown Source)
        at javax.swing.JComponent.processMouseEvent(Unknown Source)
        at java.awt.Component.processEvent(Unknown Source)
        at java.awt.Container.processEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
        at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
        at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Window.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$000(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 Sour
ce)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sour
ce)
        at java.awt.EventQueue$4.run(Unknown Source)
        at java.awt.EventQueue$4.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Sour
ce)
        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)
C:\Users\IVAN>java-jar prueba.jar
consulta busar registro:按Id从学生订单中选择*;
线程“AWT-EventQueue-0”java.lang.NullPointerException中出现异常
位于javax.swing.ImageIcon。(未知源)
在ModificarAlumno.getCancelar_btn上(ModificarAlumno.java:199)
位于ModificarAlumno.getJContentPane(ModificarAlumno.java:385)
初始化(ModificarAlumno.java:310)
在ModificarAlumno.(ModificarAlumno.java:298)
在菜单$4.actionPerformed(Menu.java:127)
在javax.swing.AbstractButton.fireActionPerformed(未知源)
位于javax.swing.AbstractButton$Handler.actionPerformed(未知源)
在javax.swing.DefaultButtonModel.fireActionPerformed(未知源)
位于javax.swing.DefaultButtonModel.setPressed(未知源)
在javax.swing.plaf.basic.BasicButtonListener.mouseReleased(未知)
(行政长官)
位于java.awt.Component.ProcessMouseeEvent(未知源)
位于javax.swing.JComponent.ProcessMouseeEvent(未知源)
位于java.awt.Component.processEvent(未知源)
位于java.awt.Container.processEvent(未知源)
位于java.awt.Component.dispatchEventImpl(未知源)
位于java.awt.Container.dispatchEventImpl(未知源)
位于java.awt.Component.dispatchEvent(未知源)
位于java.awt.LightweightDispatcher.RetargetMouseeEvent(未知源)
位于java.awt.LightweightDispatcher.ProcessMouseeEvent(未知源)
位于java.awt.LightweightDispatcher.dispatchEvent(未知源)
位于java.awt.Container.dispatchEventImpl(未知源)
位于java.awt.Window.dispatchEventImpl(未知源)
位于java.awt.Component.dispatchEvent(未知源)
位于java.awt.EventQueue.dispatchEventImpl(未知源)
位于java.awt.EventQueue.access$000(未知源)
在java.awt.EventQueue$3.run处(未知源)
在java.awt.EventQueue$3.run处(未知源)
位于java.security.AccessController.doPrivileged(本机方法)
位于java.security.ProtectionDomain$1.doIntersectionPrivilege(未知)
(行政长官)
位于java.security.ProtectionDomain$1.doIntersectionPrivilege(未知)
(行政长官)
在java.awt.EventQueue$4.run处(未知源)
在java.awt.EventQueue$4.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(未知源)

我是stackoverflow的新手,从来没有使用过这个问答网页,所以我不确定是否必须发布其他内容。星期二我得交工作项目,所以我很忙。任何帮助都是感激的,如果你需要更多关于该项目的信息,请告诉我,我会尽快发布。非常感谢。

下面的代码似乎抛出了NullPointerException

    at javax.swing.ImageIcon.<init>(Unknown Source)
    at ModificarAlumno.getCancelar_btn(ModificarAlumno.java:199)
位于javax.swing.ImageIcon。(未知源)
在ModificarAlumno.getCancelar_btn上(ModificarAlumno.java:199)

这意味着在ModificarAlumno.getCancelar_btn()上,您正在构造一个新的ImageIcon,并且在其构造函数中抛出异常。可能是图像在导出后没有正确加载吗?如果没有帮助,请发布附加代码。

如果程序在Eclipse内部工作,但在Eclipse外部工作,请检查两件事:

  • 在代码中查找您硬编码文件系统上的位置,例如图像和其他文件。在不同的计算机上,这些位置可能会发生变化

  • 导出jar默认只导出java类。如果程序中包含非java文件,请确保将导出和生成向导配置为也导出/生成这些文件


  • 张贴
    ModificarAlumno.getCancelar\u btn()的代码,并解释加载的图像的位置。