• myeclipse tomcat启动,内存溢出问题


    在 启动过程中出现 内存 溢出问题,抛出类似如下异常信息:
    java.lang.OutOfMemoryError: Java heap space

    可以尝试办法:
    A.修改Tomcat\bin\catalina.bat,添加如下内容
    set JAVA_OPTS=-Xms256m -Xmx512m -Djava.awt.headless=true [-XX:MaxPermSize=128M]

    B.eclipse->windows->preferences..->tomcat->jvm..->jvm文本框里,添加-Xms256m -Xmx512m

    C.eclipse->preference->java->instal jres->edit,增加参数:-Xms256m -Xmx512m

    参考原因: JVM中如果98%的时间是用于GC且可用的, Heap size不足2%的时候将抛出此异常信息。
    JVM堆的设置是指java程序运行过程中JVM可以调配使用的内存空间的设置.JVM在启动的时候会自动设置Heap size的值,其初始空间(即-Xms)是物理内存的1/64,最大空间(-Xmx)是物理内存的1/4。
    可以利用JVM提供的-Xmn -Xms -Xmx等选项可进行设置。Heap Size 最大不要超过可用物理内存的80%,一般的要将-Xms和-Xmx选项设置为相同,而-Xmn为1/4的-Xmx值。
    Heap size的 -Xms -Xmn 设置不要超出物理内存的大小。否则会提示“Error occurred during initialization of VM Could not reserve enough space for object heap”。

    朋友们,上面仅仅是问题表面的解决,根本上的解决还需要借助JVM内存监测工具,有待研究。。。。。
    =============================

    启动MyEclipse启动Tomcat无视catalina.bat中设置内存大小的问题。
    在tomcat的catalina.bat中设置set JAVA_OPTS=-Xms128m -Xmx256m,直接使用startup.bat启动tomcat没有问题。但是在myeclipse中配置tomcat后,通过myeclipse启 动就出现内存溢出,之前在catalina.bat中设置的内存似乎没有作用。
    解决方法:窗口->首选项->MyEcliipse->Application Servers->Tomcat->Tomcat5.x->JDK->Optional Java VM arguments中填写一下内容。
    -Xms128m -Xmx256m
    -Dcom.sun.management.jmxremote=true
    内存具体大小视具体情况制定。

    tomcat分为安装和压缩包形式,安装的情况catalina.bat设定、使用系统服务不会生效,而是存储在注册表中,位置是 HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Tomcat Service Manager\Tomcat5\Parameters\JavaOptions 修改时视情况而定。

  • 相关阅读:
    AVA 源码解读-规则逻辑
    gojs 如何实现虚线(蚂蚁线)动画?
    谷歌复制接口json
    vue拼图动画Demo
    如何获取一个类的全名
    `webpack-dev-server --inline --progress --config build/webpack.dev.conf.js(vue报错)
    Jquery通知组件
    字典树 (Trie Tree)
    [CPP] 虚函数与纯虚函数
    格雷码
  • 原文地址:https://www.cnblogs.com/batys/p/2349445.html
Copyright © 2020-2023  润新知