0

我将我的 java 程序导出到一个可执行的 JAR 文件。当我现在运行这个 JAR 文件时:

java -jar myFile.jar

出现此异常:

Exception in thread "main" java.lang.NullPointerException
    at javax.swing.JList$4.getSize(Unknown Source)
    at javax.swing.plaf.basic.BasicListUI.updateLayoutState(Unknown Source)
    at javax.swing.plaf.basic.BasicListUI.maybeUpdateLayoutState(Unknown Source)
    at javax.swing.plaf.basic.BasicListUI.getPreferredSize(Unknown Source)
    ....

以前从未见过这种情况,还没有找到解决方案。这里实际发生了什么,我该如何解决这个问题?

4

2 回答 2

2

这似乎不是与包装相关的问题。它看起来更像是有一个未正确初始化的 JList - 例如,如果您在构造函数中将 null 作为数组传递。所以检查你的代码...

于 2013-08-14T08:07:25.013 回答
0

程序:

  1. 在与 jar 完全相同的位置展开 jar 作为目录,例如ExpDir.
  2. 使用-cp ExpDir和主类运行主类。使用相同的当前目录、JVM 和其他所有内容。
  3. 如果程序现在有效(根据我的经验,概率为 1%),请在问题上对此发表评论。另外,请确认您没有无意中更改其他内容。
  4. 如果不是(99% 的概率),请更正编程错误和/或针对该错误提出不同的问题。
于 2013-08-14T08:12:53.550 回答