一、文章前言
    本文是亲测有效解决At least one JAR was scanned for TLDs yet contained no TLDs问题,绝对不是为了积分随便粘贴复制然后压根都没有用系列

二、问题描述
    1.今天测试发现Tomcat启动贼慢,当然这个不是随机数问题,而是每次卡在At least one JAR was scanned for TLDs yet contained no TLDs这个位置要好半天,而且还是在只有一个项目的情况下!

2.参考别的文章说编辑logging.properties 文件,在文件末尾添加,org.apache.jasper.servlet.TldScanner.level = FINE,启动服务器,然后在控制台看到什么No的输出提示,保存在某一个文件中,然后接下来将文件中提示的jar包再添加到catalina.properties 文件中的 tomcat.util.scan.StandardJarScanFilter.jarsToSkip的后面,问题能暂时解决,然后你会发下以下几个问题

起作用了,但是当你新加一个jar包不符合规范,烦人的提示又开始了
只适用于服务器内项目已经固定了的情况,新建一个不同类项目问题又出现
   3.想过直接关闭TLD检查,在 conf/context.xml的<Context>中添加processTlds="false"也不起作用

三、问题原因
    1.出现这个问题的原因就是Tomcat启动时会扫描大量jar包,如果含有不符合TLD规范的就会出现这个问题

2.以后基本上不会使用JSP作为视图层,所以我们可能根本不需要TLD这个东西,就算不要TLD也没有什么关系

3.注意两个启动:一个是从tomcat的bin目录中启动,另外一个是从Eclipse中或者别的软件中启动,注意看Eclipse启动部分

四、问题解决
4.1 解决步骤
    1.可以在Tomcat安装目录下apache-tomcat-9.0.1\conf\catalina.properties文件中看到有以下一串代码,代表的是在启动Tomcat需要跳过检查的jar包

2.那么解决办法就是跳过所以jar包的TLD检查,将所有tomcat.util.scan.StandardJarScanFilter.jarsToSkip=后面的所有通过\连接的这些.jar全部删除(操作之前请备份源文件),直接给tomcat.util.scan.StandardJarScanFilter.jarsToSkip赋值"*.jar","*.jar"代表跳过所有以.jar结尾的文件,示例如下

tomcat.util.scan.StandardJarScanFilter.jarsToSkip=*.jar

3.删除tomcat的work目录中的所有文件避免缓存干扰;清空所有logs目录中的日志文件,为了方便查看日志文件

4.2 从Tomcat的Bin目录中启动服务器
    1.现在到bin目录中找到startup.bat(windows:双击即可运行)或startup.sh(Linux:命令 "./startup.sh" 运行)进行启动,发现启动超快,只需要807毫秒

5.注意:这里只是直接在bin中启动了tomcat服务器,接下来是从Eclipse配置tomcat,通过Eclipse启动服务器

4.3 Eclipse启动Tomcat 
    1.如果原来就已经配置过该Tomcat的会发现在Eclipse中启动还是老样子,每次卡在TLD那里,感觉根本没有解决,原因如下

Eclipse没有使用配置过的Tomcat,而是使用了自带的Tomcat
Eclipse中原来配置过该Tomcat,因为Tomcat缓存导致没有生效
    2. 接下在最重要的一步就是删除Eclipse原来配置过的服务器,单击右键选择删除即可

3.创建新的运行环境,改成现在新配置的Tomcat,这样才能让配置生效,配置Tomcat服务器参考文章:https://blog.csdn.net/sinat_34104446/article/details/82721884

4.创建新的服务器之后启动只要482ms

(完美解决)Tomcat启动提示At least one JAR was scanned for TLDs yet contained no TLDs相关推荐

  1. 解决:Tomcat启动提示At least one JAR was scanned for TLDs yet contained no TLDs

    文章目录 一.问题描述 二.问题原因 三.问题解决 3.1 解决步骤 3.2 从Tomcat的Bin目录中启动服务器 3.3 Eclipse启动Tomcat 一.问题描述 报错内容 十月 11, 20 ...

  2. 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! 原因 是Tomcat启动时会扫描大量jar包,如 ...

  3. 完美解决Tomcat启动一闪而过

    目录 前言 一.解决方案 1.Java环境变量没配置. 2.端口被占用 3.黑窗口报错,百度一下你就知道 4.JDK问题 4.1 两种解决方案 前言 作为一个多年(>1)经验的开发,帮朋友部署项 ...

  4. 彻底解决tomcat控制台提示至少有一个JAR被扫描用于TLD但尚未包含TLD的问题

    tomcat版本为8.5.51 tomcat在启动时,控制台会打印出如下信息: org.apache.jasper.servlet.TldScanner.scanJars 至少有一个JAR被扫描用于T ...

  5. 解决 Tomcat 启动报does not exist or is not a readable directory错误

    2017-02-22 已解决,恩-.这次是真的解决完成才写的 在运行tomcat的时候,感觉部署的项目有点多,则删除了几个项目,再次启动Tomcat的时候突然报错了,如下图: 于是各种百度,找到了一篇 ...

  6. 如何解决tomcat启动时出现 Server Tomcat v9.0 Server at localhost failed to start.

    如何解决tomcat启动时出现 Server Tomcat v9.0 Server at localhost failed to start. **方法一:**点击控制台下的server,右击一下,点 ...

  7. 解决tomcat启动-Skipping unneeded JARs during scanning can improve startup time and JSP compilation time

    Tomcat9.0启动变慢解决 问题过程 在linux centos7上部署测试web项目时,通过nginx配置的tomcat集群,在启动tomcat9.0的过程中,无报错信息,但tomcat一直卡在 ...

  8. Tomcat 解决“At least one JAR was scanned for TLDs yet contained no TLDs”问题

    今天在部署war包到服务器的时候,突然出现以下错误,之前没有,造成的原因未知. org.apache.jasper.servlet.TldScanner.scanJars At least one J ...

  9. Tomcat8.5.40启动后一直卡在日志At least one JAR was scanned for TLDs yet contained no TLDs

    问题描述: 将打包好的war包放到webapps下面,启动tomcat(8.5.40版本)后,tomcat启动界面一直卡在日志At least one JAR was scanned for TLDs ...

最新文章

  1. 命名空间不能直接包含_C++程序中可以命名的5种元素
  2. 【Linux】内核态和用户态
  3. 一起talk C栗子吧(第一百二十三回:C语言实例--显示变量和函数的地址)
  4. net::ERR_INCOMPLETE_CHUNKED_ENCODING(php项目+nginx)
  5. [转载] 杜拉拉升职记——23 “You deserve it”的两种解释
  6. java undo_用JAVA实现Undo、Redo,Copy、Paste、Cut_java
  7. 不允许后退提交数据的方法(抗重复刷新提交)
  8. 大数据预测实战-随机森林预测实战(三)-数据量对结果影响分析
  9. 尝试使用Microsoft IE 7.0 Beta 1
  10. GeoServer不同服务器安装配置、数据发布及客户端访问
  11. BAT架构师推荐的9本程序员技术进阶图书,大家看过多少?
  12. [html] 回到页首
  13. 【感悟】参加公司首届黑客马拉松有感
  14. 我买了个5g手机,但是手机卡是4g的,能使用吗?
  15. C#+Selenium+Nunit demo
  16. android 微信公众号开发教程,微信公众号-开发者-自定义菜单,公众开发者
  17. 考研英语作文 独家手写笔记
  18. [ROC-RK3568-PC] [Firefly-Android] 10min带你了解GPIO复用
  19. php 字体好看点,字丑不用怕,带你轻松画出好看字体!
  20. linux更换进程执行码,第八节 进程的切换和系统的一般执行过程—— 20135203齐岳...

热门文章

  1. Computer Hardware
  2. 51nod 1631 小鲨鱼在51nod小学
  3. JavaJDBC【三、增删改查】
  4. 【面试题22】栈的压入、弹出序列
  5. js模拟实现Array的Map、Every、Some、Reduce、Find方法
  6. [jQuery原理] jQuery入口函数
  7. CSS Sprites原理
  8. TensorFlow2.0(四)--Keras构建深度神经网络(DNN)
  9. 梯度与散度与拉普拉斯算子
  10. 两种方法:实现输入一行字符,统计数字字符、英文字母和其他字符的个数(C语言)