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

25_Tomcat 同时被 2 个专栏收录
7 篇文章 0 订阅
3 篇文章 0 订阅

目录

一、文章前言

二、问题描述

三、问题原因

四、问题解决

4.1 解决步骤

4.2 从Tomcat的Bin目录中启动服务器

4.3 Eclipse启动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这个位置要好半天,而且还是在只有一个项目的情况下

    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

 

©️2021 CSDN 皮肤主题: 书香水墨 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值