java – 为什么我的.jar文件比eclipse中的程序运行得慢?

前端之家收集整理的这篇文章主要介绍了java – 为什么我的.jar文件比eclipse中的程序运行得慢?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个 java程序,它从数据库中读取大量输入数据,对其进行操作,然后将数据写回另一个数据库(使用ODBC驱动程序,excel和访问数据库,在新的 Windows 7机器上).该程序从eclipse运行大约需要17分钟,但是当我创建一个可执行的.jar文件时,它需要额外的10分钟才能运行(总共27分钟).

到目前为止,我发现慢速jar文件(通过搜索SO和谷歌)的两个原因是它们被压缩,并且写入命令提示符(或错误日志)比在eclipse中的控制台需要更长的时间.我尝试创建一个未压缩的jar文件,它只加速了大约10秒钟(这可能是完全随机的,因为运行时间大约相差30秒).我在程序中只有大约10个System.out.println()命令,因此不应该减慢它的速度.

关于是什么导致它运行得如此之慢的任何想法,如果有任何方法我可以再次加速?如果有任何其他可能相关的细节我应该包括在内,请告诉我.谢谢!

解决方法

使用 JAMon.
它是一个监控库,可以帮助您测量代码的执行时间.

在向方法添加一些监视代码之后,在Eclipse中运行它并作为JAR文件,并比较结果.这应该允许您缩小搜索范围.

另外:检查您是否使用与Eclipse相同的Java版本运行JAR文件(例如,Java 1.4.x可能比1.6.x慢得多).

猜你在找的Java相关文章