3

我已经完成了几个项目并将它们打包成 jar 文件,但我注意到我的 jar 文件运行速度比在我的 IDE 中慢得多。

我使用 Eclipse 来编译和运行我的程序。在 Eclipse 中,我一切正常。当我将我的项目打包为一个可运行的 Jar 并通过双击执行它时,一切仍然有效。但是当我有动画时,程序运行得非常慢。在 Eclipse 中,我现在获得了大约 2 帧,而不是 Eclipse 中的每秒 30 帧。动画非常拖沓。

有趣的是,当我从命令提示符 ( java -jar MyCode.jar) 运行同一个 Jar 时,延迟消失了,我的程序正常运行。

我目前不知道是什么导致了这个问题。我的电脑运行的是 Windows Vista。我正在使用最新版本的 JRE 和 JDK。我的程序包含一个动画,没什么特别的。

谢谢

解决方案: 我的计算机上有几个不同版本的 Java,并且使用了不正确的版本。

4

3 回答 3

4

Windows 自带的 java.exe 版本已经过时了。通过将 .jar 扩展名的关联更改为更新的 JVM,您应该会看到很多改进。

于 2009-02-28T00:01:57.223 回答
4

您还可以考虑是否有任何正在运行的防病毒软件影响性能。一些软件将 .jar 文件视为 .zip 档案,并相应地进行扫描。他们的 shell 集成也可以解释双击和命令行之间的区别。

于 2009-02-28T00:51:53.593 回答
3

可能您已经将双击与一些“坏”的 JVM 版本相关联。

我要做的是使用SysInternals的 processxp 来查看您的应用程序正在使用什么解释器。可能只是将其更改为与命令行和 Eclipse 相同。

检查并查看两者是否使用相同的 JVM(ProcessXP 中有一个列名命令行,比较该值)

我希望这有帮助。

于 2009-02-27T23:40:33.033 回答