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启动速度也会显著加快。
Tomcat 8启动速度慢原因1: At least one JAR was scanned for TLDs yet contained no TLDs的更多相关文章
- Tomcat启动慢原因之一 At least one JAR was scanned for TLDs yet contained no TLDs
Tomcat启动时提示: 信息: At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging f ...
- Tomcat:At least one JAR was scanned for TLDs yet contained no TLDs
启动Tomcat的时候,经常见到这样的BUG: 14-Apr-2019 13:53:25.198 信息 [localhost-startStop-1] org.apache.jasper.serv ...
- Tomcat启动log打印到INFO: At least one JAR was scanned for TLDs yet contained no TLD各种解决方式
问题: 启动tomcat时,catalina.out日志打印到如下内容就停止不动了,也不报错 SEVERE: FarmWarDeployer can only work as host cluster ...
- [转]完美解决)Tomcat启动提示At least one JAR was scanned for TLDs yet contained no TLDs
一.文章前言 本文是亲测有效解决At least one JAR was scanned for TLDs yet contained no TLDs问题,绝对不是为了积分随便粘贴复制然后压根都 ...
- tomcat 启动时遇到org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs
当发生这样的错误的时候 org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet ...
- tomcat启动卡在了 At least one JAR was scanned for TLDs yet contained no TLDs 的根本原因与解决办法
1.前言 有时候服务器开启时启动不了,卡在了 org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned fo ...
- 关于tomcat启动错误:At least one JAR was scanned for TLDs yet contained no TLDs
一.问题原因: 1.出现这个问题的原因就是Tomcat启动时会扫描大量jar包,如果含有不符合TLD规范的就会出现这个问题 2.以后基本上不会使用JSP作为视图层,所以我们可能根本不需要TLD这个东西 ...
- tomcat启动很慢 停留在 At least one JAR was scanned for TLDs yet contained no TLDs.
部署项目时候,发现启动特别慢,要等好几分钟,这不正常啊.然后每次部署都停留在 At least one JAR was scanned for TLDs yet contained no TLDs. ...
- 阿里云服务器,tomcat启动,一直卡在At least one JAR was scanned for TLDs yet contained no TLDs就不动了
项目在本地是可以成功运行的,网上看到一堆各式各样的解决办法感觉都不适合我,于是绝望的删webapps,重新上传,一直不行. 重复了第3次还是第4次,居然就好了,这是什么操作.
随机推荐
- RHEL部署ipa红帽身份验证
1.先下载必须包 yum install -y ipa-server bind bind-dyndb-ldap 2.初始化ipa基本配置 ipa-server-install * Configure ...
- CentOS添加磁盘分区
(这里的磁盘在vmware workstation VM中添加) 1.关闭虚拟机,在虚拟机设置中添加一个硬盘,然后开启虚拟机. 2.使用fdisk -l命令查看,这时会发现一个为被使用的设备,有2G的 ...
- 基于 OS X Mavericks 系统
基于 OS X Mavericks 系统远景论坛黑苹果区新手引导 常见疑难解答 以及必要知识普及帖 请善用论坛搜索功能 认真仔细地阅读置顶帖里的教程以及注意事项 前言:之前建立10.9区求助规范帖时, ...
- Linux下使用Nginx端口转发出现502错误的一种解决办法
今天圈里的一个朋友在配置完nfinx80端口转发到5000后,发现一个问题 问题描述: 正确配置了Nginx80端口转5000端口,在CentOS上把.Net core WebAPI站点上传到cent ...
- C# 获取一个独一无二的字符串 GUID
在保存文件,创建目录时,为了保证名称不重复,经常使用Random产生一个随机数,有更简单且不会重复的办法是: Guid.NewGuid().ToString() 就会生成一个类似 37c1acec-4 ...
- 【NFS】nfs安装调优
nfs [root@flymaster ~]# rpm -qa nfs-utils rpcbindnfs-utils-1.2.3-75.el6.x86_64rpcbind-0.2.0-13.el6_9 ...
- linux系统基础优化16条知识汇总
优化的总结: 1.不用root管理,以普通用户的名义通过sudo授权管理. 2.更改默认的远程连接SSH服务端口,禁止root用户远程连接,甚至 要更改只监听内网IP. 3.定时自动更新服务区时间,使 ...
- ssr panel魔改前端登陆面板配置邮件服务
1.注册 打开mailgun官网http://www.mailgun.com/ (昨天他反应打开比较慢,所以你得有点耐心,或者跟换你的DNS试试) QQ截图20140731095618.png 点 ...
- Java的大数计算BigNumber
Notice that the number 123456789 is a 9-digit number consisting exactly the numbers from 1 to 9, wit ...
- 【python学习笔记】6.抽象
[python学习笔记]6.抽象 创建函数: 使用def语句定义函数,不用声明参数类型,和返回值类型 def function_name(param1, param2): 'this is docum ...