JAR文件在一台计算机上正常执行,但在另一台计算机上没有。怎么解决?

时间:2013-05-31 21:40:56

标签: java jar cmd

在一台Windows XP计算机上运行OK的jar文件(创建它的那台)在我在另一台Windows XP计算机上执行时会出现以下错误(Windows 7 Starter):

    C:\Users\Pacu\Dropbox\PROZE>java -jar Sokoban.jar
    Exception in thread "main" java.lang.NullPointerException
            at Sokoban.RunnableMyFrame.<init>(RunnableMyFrame.java:95)
            at Sokoban.RunnableMyFrame.main(RunnableMyFrame.java:626)

毋庸置疑,如果我双击该文件没有任何反应,而在其他Windows XP计算机上则不然。

两台计算机都具有Java SE Edition V7 Update 21(版本1.7.0 _21-b11)。

2 个答案:

答案 0 :(得分:2)

您可能正在尝试加载一台计算机上的资源,而不是另一台计算机上的资源。

解决方案:将资源包含在JAR文件本身中,然后使用

加载
getClass().getResource("/folder/resource")

答案 1 :(得分:0)

我建议你以正常方式调试问题。事实上有一个没有在另一台计算机上显示的错误并不重要。你可以

  • 添加日志以查看程序正在执行的操作
  • 使用调试器来帮助调试代码。
  • 阅读触发异常的代码,以确定该值的值null