当我试图在Eclipse中的Tomcat上运行一个简单的JSP程序时,我得到了以下错误。

Tomcat v6.0服务器在本地主机上所需的几个端口(8005、8080、8009)已经被使用。服务器可能已经在另一个进程中运行,或者某个系统进程正在使用该端口。要启动此服务器,您需要停止其他进程或更改端口号。

这是如何引起的,我该如何解决它?


当前回答

Macbook的解决方案:

步骤1:停止运行Java的服务器:

打开活动监视器到应用程序>实用程序>活动监视器。或简单按CMD +空格键,并开始键入活动监视器。 寻找运行Java的进程,并在终端中输入以下命令将其终止

kill -STOP <PID> 

其中PID是Activity Monitor中显示的Java进程的进程号。重复执行几次,然后关闭并重新打开Activity Monitor以检查Java是否正在运行。

第二步:修改端口:

在Eclipse中的服务器上右键单击“Open”。将端口号从8080修改为8081或更大的值。

这应该会启动您的服务器。

其他回答

如果以上方法都不起作用,这里还有一个选择。您可能正在从共享驱动器(例如H:)中使用Eclipse。如果是,将其移动/复制到整个Eclipse目录C:,然后再试一次。

我的Eclipse无法为Tomcat服务器打开端口(有上述错误),甚至无法连接到internet。我还尝试了另一个Tomcat插件(Sysdeo),它也未能打开端口。

以下是我尝试过的选择:

检查并杀死其他Tomcat实例

在命令提示符中输入netstat -ano,检查是否有其他进程正在使用冲突的端口。 找到PID并杀死它 尝试重新启动服务器。

在Eclipse中更改Tomcat端口

在Eclipse Server选项卡中,双击Tomcat实例。这将打开配置选项卡。 在“端口”下,修改端口号。(例如,18080)。

关闭java.exe和javaw

在任务管理器中,找到并杀死java.exe和javaw(参见https://stackoverflow.com/a/25334782/4212710和https://stackoverflow.com/a/26136890/4212710) 尝试重新启动服务器。

请参阅我对Eclipse无法连接到Internet的其他回答(https://stackoverflow.com/a/37246087/4212710)。

如何杀死一个windows服务使用PID -

打开命令提示符并输入netstat -ano 找到正在使用的端口的PID,在本例中为8080,8005,8009。假设这些端口的PID为5760。 现在输入taskkill /f /pid 5760 它将关闭PID,端口将可用。现在,您可以通过Windows服务或eclipse本身正常启动tomcat。

谢谢

杀死一个停止或启动卡住的Windows服务

对我来说更简单的解决方法是通过“服务器”选项卡从tomcat中删除我当前部署的webapps。一旦我把它们去掉,问题就解决了。只需重新部署您的项目运行>在服务器上运行。

Macbook的解决方案:

步骤1:停止运行Java的服务器:

打开活动监视器到应用程序>实用程序>活动监视器。或简单按CMD +空格键,并开始键入活动监视器。 寻找运行Java的进程,并在终端中输入以下命令将其终止

kill -STOP <PID> 

其中PID是Activity Monitor中显示的Java进程的进程号。重复执行几次,然后关闭并重新打开Activity Monitor以检查Java是否正在运行。

第二步:修改端口:

在Eclipse中的服务器上右键单击“Open”。将端口号从8080修改为8081或更大的值。

这应该会启动您的服务器。

我也遇到了同样的问题,经过搜索,答案如下所示: 1. 打开Monitor Tomcat,如下所示:

只需按下停止,如下图所示:

经过多次试验和建议的解决方案后,它终于与我一起工作了。

此致敬意 凯雷洛斯·米哈伊尔