问题描述:
spring boot开发项目,部署到tomcat,启动报错,提示“可能会有内存泄露”。
异常信息:
org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads The web application [**] appears to have started a thread named [logback-2] but has failed to stop it. This is very likely to create a memory leak. Stack trace of thread:
具体提示信息如下:
解决方式:
(1)pom文件加入如下依赖:
<!-- 解决tomcat web加载内存泄漏问题 --> <dependency> <groupId>se.jiderhamn</groupId> <artifactId>classloader-leak-prevention</artifactId> <version>1.15.2</version> </dependency>
(2)java文件增加
@Bean public ServletListenerRegistrationBean servletListenerRegistrationBean(){ ServletListenerRegistrationBean servletListenerRegistrationBean = new ServletListenerRegistrationBean(); servletListenerRegistrationBean.setListener(new ClassLoaderLeakPreventor()); return servletListenerRegistrationBean; }
在Spring Boot项目部署到Tomcat时遇到启动报错,提示可能出现内存泄露。异常信息涉及到WebappClassLoaderBase。为解决此问题,可以在pom.xml文件中添加特定依赖,并在Java代码中进行相应调整。





