一个执行频繁 swing/awt 绘画动画的 java 程序(但没有比 g.fillOval(...) 更高级)在 Netbeans 中以一致的 60fps 运行,在 Eclipse 中运行或作为 jar 执行时大约为 6fps来自 unix 终端的文件。该程序是在 Netbeans 中开发的,是普通的桌面应用程序(不是 webstart 或 japplet 或...)。这发生在带有 java 1.6 的 Ubuntu 10 中。这怎么可能?
$
java -version
java version "1.6.0_22"Java(TM) SE Runtime Environment (build 1.6.0_22-b04)
Java HotSpot(TM) Client VM (build 17.1-b03, mixed mode, sharing)
设置默认jvm为sun版本,输出netbeans和unix终端使用的jvm,两者是一样的:
java.runtime.name=Java(TM) SE 运行时环境,sun.boot.library.path=/usr/lib/jvm/java-6-sun-1.6.0.22/jre/lib/i386 , java.vm.version=17.1-b03, java.vm.vendor=Sun Microsystems Inc.
但是,这没有任何区别,因为仍然存在显着的帧速率差异。是否还有其他因素可能在此处发挥作用?
最佳答案
一个可能的原因可能是 NetBeans 可以使用一个 JVM,而 Eclipse 和终端“java”命令可以使用另一个。查看 NetBeans 为您的项目使用的平台,并将其与 Eclipse 进行比较。
也可以有一些你传递给 JVM 的参数。也检查一下。
关于Java 程序在 Netbeans 中运行流畅,但在 Eclipse 中运行缓慢,并且作为可执行 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4628000/