Linux服务器下tomcat端口被占用(启动报错),换任意端口号都会报错,报错提示8080,8009,8005端口被占

Linux服务器下tomcat端口被占用(启动报错),换任意端口号都会报错,报错提示8080,8009,8005端口被占,第1张

1、netstat -ntlp检查端口

2、stop.sh

pgrep java|xargs kill -9

3、stop.sh

#!/bin/bash

ps -ef| grep tomcat |grep -v grep | awk '{print $2}' |xargs kill -9

4、netstat -an|grep 8080

首先打开cmd,打开的方法很简单,在开始菜单中直接输入即可。同样也可以按下win+R打开运行,然后输入cmd即可。

在dos命令中输入以下命令查询正在被使用的端口号以及使用它的程序。

命令:netstat -ano

内容分析:

前面的程序占用的进程,冒号后面的就是我们要查找的端口。找到8080,因为我的已经解决了,所以这里图片就不能给大家了。

看到后面是有一个PID,然后把占用8080端口的PID号记下来。

在人物栏右击鼠标——选择任务管理器。

点击菜单栏中的选型——显示前段按钮。然后将选项卡打到进程一栏。这是你就能看到程序所占用的PID号了。

找到刚刚查询的占用8080端口的那个进程,结束掉就OK了。

关闭Eclipse后再次使用,出现如下报错:

从描述看是端口有问题,而实际在控制台中我们可以看到这重要的几句:

严重: Failed to destroy end point associated with ProtocolHandler ["ajp-nio-8009"]

严重: Failed to destroy end point associated with ProtocolHandler ["http-nio-8080"]

org.apache.catalina.LifecycleException: Failed to start component [StandardServer[8005]]

没有权限去重启这些端口,即端口被占用,而实际上,问题不出在端口被占用,而是我们的配置有问题!

我们去到tomcat安装目录下的C:\Program Files\Apache Software Foundation\Tomcat 8.0\conf,

我们可以看到有个server.xml的文件这就是我们的主角了,我们用写字板打开,拉到底部,看到一大串混乱的<Context />标签了么?

我们把它全部删除,剩下自己想要的那个,就像这样子:

2)重新配置JRE --失败

打开EClipse ->windows ->prefreances ->server ->installed runtimes ->Tomcat(配置的服务器中间件名称) ->edit ->手动修改Jre ->finish

3)Clean 项目--失败

4)重启Java进程

本机的端口8005,8009已经被其他程序占用。先看一下你的tomcat是否已经启动。通过windows的[任务管理器]看看是否java进程。

eclipse会启一个javaw的进程,tomcat会启java进程。杀掉java进程再试一下。再看一下是否有其他程序占用这个端口。是否启过php的服务器,可能会有端口冲突。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8992609.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-23
下一篇 2023-04-23

发表评论

登录后才能评论

评论列表(0条)

保存