• 通过eclipse启动tomcat设置JAVA_OPTS失败的解决方案


    clipse中配置tomcat方法:

    Window-->Preference-->Server-->Runtime Environment-->add-->Apache -->Apache TomcatV6.0...设置JRE,完成。

    Servers view 中右键New-->Server,选择Apache-->Tomcat V6.0 Server,完成!

    通过eclipse中配置的tomcat6,发布项目,启动时报内存溢出,需要重新设置tomcat的JVM参数。

    常用的设置方法为:

    修改%tomcat_home%/bin下catalina.bat(windows环境下)文件,在

    echo Using CATALINA_BASE:   "%CATALINA_BASE%"

    上面新增

    set JAVA_OPTS=%JAVA_OPTS% -Xms1024M -Xmx1024M -XX:PermSize=256M -XX:MaxNewSize=256M -XX:MaxPermSize=512M -Droot.log.level=INFO -Dspring.log.level=WARN -Dsql.log.level=INFO -Dproject.log.level=INFO -Dmas.log.basedir=D:/opt/logs/mas/mas_log

    解释:

    set JAVA_OPTS=%JAVA_OPTS% ...   ---- JAVA_OPTS 追加参数
    -Xms1024M -Xmx1024M -XX:PermSize=256M -XX:MaxNewSize=256M -XX:MaxPermSize=512M  -- VM参数设置
    -Droot.log.level=INFO -Dspring.log.level=WARN -Dsql.log.level=INFO -Dproject.log.level=INFO -- log日志设置
    -Dmas.log.basedir=D:/opt/logs/mas/mas_log   -- 定义全局变量 mas.log.basedir = D:/opt/logs/mas/mas_log
    该地方是为logback中定义日志存放地址
    <fileNamePattern>${mas.log.basedir}/mas_batch.log.%d{yyyy-MM-dd}</fileNamePattern>

    但是,配置好好如上参数后,启动后仍然报内存溢出错误,通过Jconsole观察,修改的参数没有生效。

    分析:

    1. tomcat默认通过执行%tomcat_home%/bin/startup.bat完成tomcat启动

    2. 修改了tomcat的catalina.bat中JAVA_OPTS参数,没有生效,说明通过eclipse启动tomcat并未调用%tomcat_home%/bin/startup.bat

    3. eclipse中,选择菜单栏Run -> Run Configurations -> Apache Tomcat -> Tomcat V6.0 Server...

       选择Arguments标签页,会发现program arguments中参数为:start,说明eclipse是调用tomcat的main方法并传递start参数启动tomcat的;

       而Arguments标签页下面的VM arguments参数,启动tomcat使用的是eclipse中我们自定的JRE

    因此,需要修改eclipse中JRE的VM参数

    windows->preference->java->instal jres->edit,增加如上的参数即可。

    参考:

    http://wallimn.iteye.com/blog/693158



  • 相关阅读:
    pylint
    Cygwin安装与配置
    Spring的配置文件
    网络传输测试软件
    MINA快速传输文件
    Jar包下载
    shutdown彻底关闭tomcat,以及多线程关闭
    Git使用
    例说数学学习中的四基
    求等差数列前n项和S_n的最值
  • 原文地址:https://www.cnblogs.com/huahua035/p/4807491.html
Copyright © 2020-2023  润新知