【问题标题】:Unable to execute JAR file on another PC无法在另一台 PC 上执行 JAR 文件
【发布时间】:2024-01-19 06:36:01
【问题描述】:

我已经使用 NetBeans 创建了一个 Swing GUI,并且能够在我的本地计算机上成功执行它。但是每当我在另一台 PC 上执行 JAR 文件 gui_test.jar 时,都会出现如下所示的错误。

gui_test中的类是:

  • gui.gui
  • StreamGobbler.java

错误

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at gui_test.gui.walk(gui.java:967)
at gui_test.gui.<init>(gui.java:1030)
at gui_test.gui$17.run(gui.java:1030)
at java.awt.event.InvocationEvent.dispatch (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 Source)

at jaya.awt.Eyentgueue.dispatchEyent(Unknown Source)
at jaya.awt.EyentDispatchIhread.punpOneEyentForFilters(Unknown Source)
at jaya.awt.EyentDispatchIhread.punpEyentsForFilter(Unknown Source)
at jaya.awt.EyentDispatchIhread.punpEyentsForHierarchy(Unknown Source)
at jaya.awt.EyentDispatchIhread.punpEyents(Unknown Source)
at jaya.awt.EyentDispatchIhread.punpEyents(Unknown Source)
at java.awt.EyentDispatchIhread.run(Unknown Source)

任何解决问题的建议将不胜感激。

【问题讨论】:

  • 其他机器是同一个操作系统吗?它们都是 32 位、64 位还是混合的?您是否在其他机器上绑定了更简单的代码版本?
  • 标准异常堆栈消息中的错字很奇怪
  • 由于错误发生在gui_test.gui.walk,我建议关注那段代码。在此处发布以供审核。
  • 听起来您忘记包含所需的资源。很高兴看到相关代码

标签: java swing deployment jar


【解决方案1】:

以下是可能的。

  1. 您已在新版本的 Java 中开发它,而“其他”机器使用的是旧版本
  2. 另一台机器的 JRE 中的问题
  3. 构建问题。尝试干净 > 在 netbeans 中重建

这就是我能想到的。在其他几台Java版本相同的机器上试试这个,只有你能解决问题。

【讨论】:

  • 非常感谢您的回复,让我试一试,然后再次回复您:)
【解决方案2】:

我对 Netbeans 不太熟悉,但我确实记得在将 GUI 从 Netbeans 导入 Eclipse 时遇到问题。这可能是因为 Netbeans GUI 使用了某些库。

检查这个问题和这个答案,它可能会帮助你 https://*.com/a/4498151/975959

【讨论】:

  • 非常感谢您的回复,让我试一试,然后再次回复您:)
最近更新 更多