springboot以tomcat方式启动后报错

使用idea启动tomcat时,报错。将程序打包到linux后,仍报相同错误。

错误如下:

java 复制代码
一个或多个筛选器启动失败。完整的详细信息将在相应的容器日志文件中找到
严重[localhost] org.apache.catalina.core.StandardContext.startInternal 由于之前的错误,Context[]启动失败。

web应用程序[ROOT]似乎启动了一个名为[xxxxx]的线程,但未能停止它。这很可能会造成内存泄漏。

// 最后提示
java.lang.IllegalStateException: 非法访问:此web应用程序实例已停止。无法加载[]。为了调试以及终止导致非法访问的线程,将抛出以下堆栈跟踪。
at org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1358)

后续注意到提示详细错误在容器的日志内,于是找了catlina.out,发现它的内容同控制台一致,汗。

因为idea使用了smart tomcat 插件,所以在catalina base路径下,找到/logs文件夹,发现里面有一个叫localhost.日期.log的文件。打开后 发现如下问题:

java 复制代码
严重 org.apache.catalina.core.StandardContext.filterStart 启动过滤器异常[SelfFilter]
java.lang.AbstractMethodError: com.qq.haha.haolow.util.SelfFilter.init(Ljavax/servlet/FilterConfit;)V

上网搜了一下,发现原来是程序写SelfFilter时,只覆写了doFilter方法, 但没有覆写destroy和init方法,加上即可(空方法即可)。

修改后可以顺利启动tomcat

相关推荐
用户4279254051711 分钟前
《微博开放平台官方CLI开源了:70+API一行搞定,AI Agent原生支持》
后端
Csvn2 分钟前
文本处理三剑客 — grep、sed、awk 实战精讲
后端
sarasuki5 分钟前
JavaScript的对象、new的机制与原型包装类
javascript·后端
某鹏8 分钟前
java伪共享问题的稳定解法
后端
fliter13 分钟前
Rust 不是手动内存管理:它是声明式内存管理
后端
AI人工智能_电脑小能手14 分钟前
【大白话说Java面试题 第125题】【并发篇】第25题:说说 Java 线程的中断机制
java·后端·面试
fliter18 分钟前
Box 里到底装了什么:从 Go interface 到 Rust trait object
后端
Java内核笔记22 分钟前
Spring Security 源码解析(六)无状态 JWT 实践:Session 共享与自定义过滤器
java·后端
乘云数字DATABUFF22 分钟前
5分钟部署开源APM Databuff:OpenTelemetry全链路追踪入门实战
运维·后端
杨利杰YJlio24 分钟前
OpenClaw / clawdbot 是什么?看懂 Agent 体系
前端·后端