病毒或机器造成的"无法创建Java虚拟机"搞砸了?

5Yr*_*DBA 7 java windows ant jvm

在此输入图像描述

我正在使用安装了4GB内存的双核XP机器(但由于32位事实,操作系统仅报告了2.5GB).我通过使用最新的Eclipse(编辑,构建和运行)和Ant(另一种构建和运行方式)来主动修改旧的JAVA应用程序至少一个月.在Eclipse运行配置和build.xml文件中,我们有以下JVM参数:-Xmx1024M -Xms1024M -Xmn384M.我们多年来一直在使用这种配置.

我还有一个批处理文件,用这个参数启动Eclipse : -vmargs -Xmx768M. 这个批处理文件已经和我在一起多年了.(现在我改为修改eclipse.ini进行配置.)

前天,我发现使用Ant构建和运行我的应用程序时速度要慢得多(我在修改过程中经常构建并运行它).我回家之前就重新启动了机器.那天晚上我通过VPN连接我的机器来完成一些修改(我是一名非常优秀的员工.)并且发现速度更慢.第二天早上,当我使用Ant运行我的应用程序时," 无法让Java虚拟机疯狂 "开始发生.

我重新启动了我的机器.然后我无法用同样的错误启动我的Eclipse.我必须更改vmargs以声称只有512MB内存才能启动Eclipse.Ant的构建时间从大约20秒增加到大约6分钟.而且我必须将JVM的最大内存减少到

-Xmx512M -Xms512M
Run Code Online (Sandbox Code Playgroud)

在Eclipse运行配置和Ant build.xml中都是为了避免错误.

然后我卸载我的1.6u24 jdk/jre并安装了1.6u25.我重新安装了Eclipse.使用趋势科技扫描整个计算机,一无所获.

我通常连接到另一台机器进行一些测试也有类似的结果(较慢).所有其他机器,包括我的同事的机器和我的笔记本电脑,使用相同的应用程序和工具正常工作.

如果我使用Ant来构建和运行它,那么构建过程和启动过程都非常慢.我创建了两个批处理文件来编译和启动我的应用程序.他们正常工作.使用Eclipse编译时,它正常工作.但我现在不能要求JVM 为我的应用程序申请1024MB.

我机器上的所有其他活动似乎都很正常.VisualStudio和C#应用程序照常工作.由于硬盘故障,几周前我的机器重建了.所以没有太多无用的东西可以减慢我的机器速度.

任何人都可以帮我弄清楚为什么我机器上的JVM改变了它的行为?我希望它不是由病毒引起的.在我打电话给IT重建我的机器之前,你知道我能尝试什么吗?

谢谢,

Edw*_*uck 6

虽然您的配置可能没有更改,但这并不意味着可用内存量没有改变.内存被操作系统中的所有程序使用,因此如果另一个程序的内存使用量稍大,则可能无法预先分配您指定的1GB内存(来自命令行参数)必须可用于启动JVM.

另一种可能性是安装/运行了一些新程序,它与你需要的内存潜逃.病毒扫描可能已经安装/更新,仅此一项就可能非常耗费内存(取决于产品).

最后,您提到机器已重建.您可能希望(通过BIOS)验证您实际上具有与重建之前相同的物理内存量.重建机器有一种有趣的方式,可以将记忆棒从插座中扯出来(或者可能还有更多的重建工作,而不是眼睛).问题可能很简单,因为没有足够的内存来预先分配给JVM,因为你的开始时间较少.

如果所有这些检查出来,请检查一些模糊的东西.如果重新安装了一个非常旧的或不同的操作系统,它可能不支持访问所安装的内存.当有人从64位安装恢复到32位安装时,通常会发生这种情况.


Kaj*_*Kaj 0

你能在任务管理器中看到什么奇怪的东西吗?CPU利用率?事实上,你不能像以前那样分配那么多内存,这听起来很奇怪,但在我的一台开发机器上升级防病毒软件后,我发现编译时间也有类似的减少。

如果在编译时禁用防病毒软件会发生什么?