tomcat设置为4g内存后不能启动,服务器内存为8G,怎么解决?
Could not reserve enough space for object heap
Could not create the Java virtual machine.
Error occurred during initialization of VM

解决方案 »

  1.   

    参考http://suan2046.javaeye.com/blog/316633
      

  2.   

    tomcat本身是一个java工程,你得让jre的内存更大才行啊。
      

  3.   

    2楼的 那个设置不了大内存啊怎么让让jre的内存更大更大?
      

  4.   


    要下班了。
    你去研究下catalina.bat这个文件,应该是从那改的。
      

  5.   

    虚拟机用jrockit,就可以用大内存了,不要用sun的
      

  6.   

    你用的是 64 位的 JDK 么?
      

  7.   

    是 64 位的 JDK 
      

  8.   

    问题还没有解决,不知道有没有人遇到过,为什么tomcat6不能设置大内存?
      

  9.   

    (1)当在命令提示符下启动并使用JVM时(只对当前运行的类Test生效):
    java -Xmx128m -Xms64m -Xmn32m -Xss16m Testtomcat本身是一个java项目。catalina.bat中有java启动的命令。像下面这样;
    if not "%SECURITY_POLICY_FILE%" == "" goto doSecurity
    %_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
    goto end
    :doSecurity
    %_EXECJAVA% %JAVA_OPTS% %CATALINA_OPTS% %DEBUG_OPTS% -Djava.endorsed.dirs="%JAVA_ENDORSED_DIRS%" -classpath "%CLASSPATH%" -Djava.security.manager -Djava.security.policy=="%SECURITY_POLICY_FILE%" -Dcatalina.base="%CATALINA_BASE%" -Dcatalina.home="%CATALINA_HOME%" -Djava.io.tmpdir="%CATALINA_TMPDIR%" %MAINCLASS% %CMD_LINE_ARGS% %ACTION%
    goto end
    你试试在启动参数中加入-Xmx128m -Xms64m -Xmn32m -Xss16m(值肯定是要改的)。
      

  10.   

    一定要搞这么大么?
    会不会是jre的内存有限制?或者和机器的物理结构有关?
      

  11.   

    网站访问量比较大,都是动态的,因为服务器还比较内存多 所以想把内存设置大一些,
    我看有文章建议说tomcat设置为物理内存的80%,因为其它的都是在运行web容器上的
    jre有什么地方可以限制内存吗?
      

  12.   

    jre ,JDK版本不一样。最大内存也不一样。我也遇到过这个问题。我用JDK1.4最大只能设置1024M.换成JDK1.5后。就能设置了,不知道JDK1.5最大能设置多大
      

  13.   

    你服务器的OS版本是哪个?tomcat是直接解压的版本么?
      

  14.   

    真是,说了换个虚拟机 jrockit,这么简单的做法,干吗要大家探讨的那么复杂,本身由于java虚拟机的限制,导致4g时,你的堆会出现问题,而jrockit对垃圾搜集和堆分配作了优化
      

  15.   

    起动四个TOMCAT不就够了,一个两G,四个八G
      

  16.   

    好像是在tomcat 的jdk-optional java vm arguments里面设置