导出后Java Eclipse项目出现问题
我已经为学校做了几个星期的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)
我是stackoverflow的新手,从来没有使用过这个问答网页,所以我不确定是否必须发布其他内容。星期二我得交工作项目,所以我很忙。任何帮助都是感激的,如果你需要更多关于该项目的信息,请告诉我,我会尽快发布。多谢各位
# 1 楼答案
下面的代码似乎抛出了NullPointerException
这意味着在ModificarAlumno。getCancelar_btn()您正在构造一个新的ImageIcon,在其构造函数中抛出异常。可能是图像在导出后没有正确加载吗?如果这没有帮助,请发布其他代码
# 2 楼答案
如果该程序在Eclipse内部工作,但不在Eclipse外部工作,请检查两件事:
在你的代码中寻找你在文件系统中硬编码位置的地方,比如图像和其他文件。在不同的计算机上,这些位置可能会发生变化
导出jar默认只导出java类。如果程序中包含非java文件,请确保将导出和生成向导配置为导出/生成这些文件