zoukankan      html  css  js  c++  java
  • Tomcat 8启动速度慢原因1: At least one JAR was scanned for TLDs yet contained no TLDs

    最近使用tomcat8启动项目时,发现At least one JAR was scanned for TLDs yet contained no TLDs这一步加载时间非常长,

    从网上收集了各种资料最终得以解决,整理了一下过程,希望能够帮到大家。

    参考文章:https://blog.csdn.net/yasi_xi/article/details/49642661

     注:${catalina.base}特指tomcat根目录

    1)找到${catalina.base}/conf/logging.properties 文件,在文件末尾添加:

    org.apache.catalina.startup.TldConfig.level = FINE
    org.apache.jasper.compiler.TldLocationsCache.level = FINE
    org.apache.jasper.servlet.TldScanner.level = FINE

    2)重启Tomcat ,等完全成功启动后。此时,在${catalina.base}/logs/catalina.xxxx-xx-xx.log (xxxx-xx-xx为当前年月日)文件中能看到一下的log:

    3)如果是linux环境,cd ${catalina.base}/logs/

    egrep "No TLD files were found in [file:[^]+]" ${catalina.base}/catalina.out -o | egrep "[^]/]+.jar" -o | sort | uniq | sed -e 's/.jar/.jar,\/g' > skips.txt

    如果是windows环境,可以使用notepad++匹配出所有jar,也可以自行使用命令匹配出所有jar(本人bat脚本写的不熟练,这里也没去研究)

    4)总之最终得到的结果如下:

    jcl-over-slf4j-1.7.25.jar,
    jcifs-1.3.17.jar,
    urlrewritefilter-4.0.4.jar,
    spring-webmvc-portlet-4.3.10.RELEASE.jar,
    spring-instrument-4.3.10.RELEASE.jar,
    aopalliance-1.0.jar,
    commons-email-1.5.jar,
    jaxws-api-2.2.10.jar,
    jsr173_api-1.0.jar,
    fastjson-1.2.47.jar
    spring-context-4.3.10.RELEASE.jar,
    commons-configuration-1.10.jar
    javax.persistence-2.0.0.jar
    javax.mail-1.5.6.jar,
    spring-test-4.3.10.RELEASE.jar
    jstl-1.2.jar
    xml-apis-1.0.b2.jar,
    commons-net-3.6.jar,

    6)将上面的结果放到 ${catalina.base}/conf/catalina.properties 文件中的 “tomcat.util.scan.StandardJarScanFilter.jarsToSkip=” 处,保存该文件,结果如下(这里支持通配符,例如spring*.jar):

    5)注释掉步骤1中在 logging.properties 中添加的三行代码,删除  ${catalina.base}/work 下的所有内容,重启 Tomcat

    #org.apache.catalina.startup.TldConfig.level = FINE
    #org.apache.jasper.compiler.TldLocationsCache.level = FINE
    #org.apache.jasper.servlet.TldScanner.level = FINE

    重启后,Tomcat 将不再对步骤4中配置 jar 文件做 TLDs 扫描,tomcat启动速度也会显著加快。





     

  • 相关阅读:
    Please check logcat output for more details
    如何移植freertos
    依赖: nginx-common (= 1.14.0-0ubuntu1) 但是它将不会被安装
    错误:22 http://ppa.launchpad.net/fkrull/deadsnakes/ubuntu bionic Release 404 Not Found [IP: 91.189.95.83 80]
    由于没有公钥,无法验证下列签名:
    jQuery的TAB切换+定时器
    CSS问题1:div中 li宽度不固定 ie6和ie7不兼容不自动换行
    (转)Sqlite中INTEGER PRIMARY KEY AUTOINCREMENT和rowid的使用
    (转)JS加载顺序
    (转)在网页中JS函数自动执行常用三种方法
  • 原文地址:https://www.cnblogs.com/mingxiaoyue/p/8669181.html
Copyright © 2011-2022 走看看