当前位置: 首页 > 知识库问答 >
问题:

在Java OutOfMemoryError之后,Tomcat将无法启动

凤棋
2023-03-14

在Tomcat中多次运行应用程序后,我已经耗尽了PermGen内存(我怀疑是quartz servlet的问题),Java抛出了一个OutofMemoryError。通常,我只是不时地重启tomcat,但自从发生这种情况后,我无法启动/重启。Tomcat在我们的qa环境中运行,通常通过sbin文件夹启动/停止/重新启动。我尝试使用替代方案catalina.sh run启动tomcat,但它表示端口正在被使用!这使我怀疑tomcat已经在运行,但当我试图停止它时,我得到了以下错误:

根据Boris的评论,我已经使用ps auxfww列出了进程,唯一一个以tomcat为用户的进程如下:

tomcat 5111 8.0 29.0 2052336 556512?Sl 1月17日221:48/usr/java/lates/bin/java-djava.util.logging.config.file=/var/lib/tomcat/conf/logging.properties-djava.util.logging.manager=org.apache.juli.classloaderlogmanager-javaagent://usr/share/tomcat/newrelic/newrelic.jar/lib/tomcat-dcatalina.home=/usr/share/tomcat-djava.io.tmpdir=/var/lib/tomcat/temp org.apache.catalina.startup.bootstrap start

出于某种原因,即使作为root用户,我也不能删除进程。我用

sudo kill 5111

但是进程仍然在之后列出,tomcat仍然不会重启...

共有1个答案

冉高寒
2023-03-14

在这里阅读杀死

sudo kill-9 511 1将做这项工作。Tomcat绑定到8005端口:除非使用SIGKILL信号终止进程,否则它不会释放端口(并且不允许在此端口上启动另一个Tomcat)。

 类似资料:
  • 为了使其可部署,我将这个类添加到我的项目中: POM:

  • 问题内容: 我昨天安装了Java 8 Update 71,但此后我的Eclipse没有启动。Windows仅在鼠标上显示一个简短的加载符号。在获得Java 8 Update 66之前,一切工作正常。 因此,我尝试使用参数打开它并设置path变量。删除了Eclipse和整个文件夹,但这并没有解决问题。然后,我在Windows软件面板中卸载了Java软件包,而现在剩下的唯一一个是。然后,我尝试启动Ec

  • 问题内容: 我昨天安装了Java 8 Update 71,但此后我的Eclipse没有启动。Windows仅在鼠标上显示一个简短的加载符号。在获得Java 8 Update 66之前,一切工作正常。 因此,我尝试使用参数打开它并设置path变量。删除了Eclipse和整个文件夹,但这并没有解决问题。然后,我在Windows软件面板中卸载了Java软件包,而现在剩下的唯一一个是。然后,我尝试启动Ec

  • 当我尝试运行项目或启动Tomcat时,我不断收到此错误: 从SVN获得更新后发生此问题。看起来在MetalCikisIslemleriBean类中存在一些不兼容性。我搜索了此异常,并作为解决方案添加了 到金属群岛,但仍然没有好处。Tomcat没有启动。关于这个问题,有人有什么推荐吗?提前感谢。 编辑:我安装了另一个Tomcat版本,但仍然不好。我删除了Tomcat工作下的文件 编辑

  • Tomcat启动失败,服务器端口8080已在使用中。 请帮助解决这个问题。我已经下载了mysql-connector-java-8.0.17.zip并解压了它。

  • 在配置实例时,我使用“Remote-exec”执行一些命令,然后通过terraform启动一个tomcat实例。它看起来像这样: } 输出显示tomcat已启动,但当我查看实例时,日志显示它尚未启动(没有日志记录)。我可以用ssh连接到实例中并运行“/catalina.sh start”,效果很好。我还尝试创建一个服务,并在远程执行内联命令中运行“sudo service tomee start”