2010-02-09 122 views
4

我跑了 “蝙蝠” 的文件,它指向的asant:java堆空间的问题,如何增加堆大小?

C:\Sun\SDK\bin\asant Startbds 

的asant再次指向一个xml文件我有,build.xml文件:

<target name="Startbds" description="Start bds"> 

这一直是罚款了,但现在我增加了更多的数据,这导致了内存不足的错误:

java.lang.outOfMemoryError: Java heap space 

所以我试图增加通过各种方法堆空间我已经找到而解决摸索:

  • CMD:设置ANT_OPTS=-Xms512m -Xmx512m(没有工作,相同的错误消息)
  • 编辑其中i编辑的行 “-set ANT_OPTS” 从

的asant.bat。

set ANT_OPTS="-Dos.name=Windows_NT" -Djava.library.path=%AS_INSTALL%\lib;%AS_ICU_LIB%;%AS_NSS%" "-Dcom.sun.aas.installRoot=%AS_INSTALL%" "-Dcom.sun.aas.instanceRoot=%AS_INSTALL%" "-Dcom.sun.aas.instanceName=server" "-Dcom.sun.aas.configRoot=%AS_CONFIG%" "-Dcom.sun.aas.processLauncher=SE" "-Dderby.root=%AS_DERBY_INSTALL%" 

TO

set ANT_OPTS="-Xms512m -Xmx512m" "-Dos.name=Windows_NT" -Djava.library.path=%AS_INSTALL%\lib;%AS_ICU_LIB%;%AS_NSS%" "-Dcom.sun.aas.installRoot=%AS_INSTALL%" "-Dcom.sun.aas.instanceRoot=%AS_INSTALL%" "-Dcom.sun.aas.instanceName=server" "-Dcom.sun.aas.configRoot=%AS_CONFIG%" "-Dcom.sun.aas.processLauncher=SE" "-Dderby.root=%AS_DERBY_INSTALL%" 

但是这给我的错误信息:

"Invalid initial heap size: -Xms512m -Xmx512m 
Could not create the Java virtual machine." 

任何人都有的,应该怎样增加堆大小的想法? 也许还会提供一个指向我可以在哪里找到工具来观察堆积的指针。

在此先感谢。

+0

1 gb。 Windows 2008服务器。 – Ikky 2010-02-09 15:19:49

回答

6

通过使用"-Xms512m -Xmx512m"你给了单参数-Xms期望最小堆大小由参数的其余部分指定。因此,您将最小堆大小定义为“512m -Xmx512m”,这不是有效值。

您将要提供这些交换机作为两个参数

set ANT_OPTS=-Xms512m -Xmx512m "-Dos.name=Windows_NT" ... 
+0

感谢您的提示。我没有收到错误消息: “初始堆大小无效:-Xms512m -Xmx512m 无法创建Java虚拟机。” 但我仍然遇到Java堆空间的问题。 – Ikky 2010-02-09 15:18:53

+0

我试图将c:上的页面大小增加到5Gb,然后尝试将堆大小增加到4GB,但现在我得到错误消息: “无法为对象堆预留足够的空间”。 是否有限制? – Ikky 2010-02-09 15:39:06

+0

@ikky:一个限制是您的机器中可用的物理内存。另一个是单个进程可以拥有的最大堆大小(我认为在32位Windows上为2GB)减去JVM在其他部分所需的量。 – 2010-02-09 15:47:37

1

我认为,如果你在windows的时候,你并不需要在您所设定的双引号。 下面是一个例子,我看到的地方:

set ANT_OPTS=-Xms512m -Xmx512m (Windows) 
export ANT_OPTS="-Xms512m -Xmx512m" (ksh/bash) 
setenv ANT_OPTS "-Xms512m -Xmx512m" (tcsh/csh) 

至于监控堆的使用情况,如果你是在Windows上使用最新的JDK,你应该有Sun的VisualVM的。

+0

我会检查一下。谢谢。 – Ikky 2010-02-09 15:19:32

0

Eclipse的>窗口 - >首选项 - > Tomcat-> JVM设置 - >附加到JVM参数

-XX:MaxPermSize参数=512米

-Xms512m

-Xmx512m