java.net.BindException:已在使用的地址:JVM_Bind :80

我在启动Tomcat服务器时遇到绑定exception。 当一些进程正在使用它时,我试图杀死使用’80’的进程。

获取错误,同时查杀进程ID为’0’:

错误:无法终止PID 0的进程。 原因:这是关键的系统过程。 Taskkill无法结束此过程。

如何解决这个问题?

我不需要使用另一个端口来运行tomcat服务器。

将Tomcat设置为侦听端口80是错误的 ,因为开发8080是一个很好的端口。 对于生产用途,只需设置一个apache,将您的请求转发给您的tomcat。 这是一个如何。

错误:

java.net.BindException:已在使用的地址:JVM_Bind:80

意味着另一个应用程序正在侦听端口80。

您可以通过lsof命令检查哪个进程正在使用此端口,例如sudo lsof -i:80 。 然后停止或杀死它。

如果无法帮助查找在同一端口上运行的应用程序,则常见的错误是Tomcat配置错误。

例如,默认情况下,Tomcat在端口8005上侦听SHUTDOWN命令,如果您将另一个连接器设置为侦听同一端口,则会发生端口冲突。

所以请在server.xml仔细检查这些端口是否不同:

   

PID 0是系统空闲进程,它肯定不会侦听端口80.您是如何检查哪个进程正在使用该端口?

您可以使用

 netstat /nao | findstr "80" 

找到PID并检查它是什么过程。

使用以下命令查找您的tomcat端口是否已被使用,

 netstat -a -b 

exceptionjava.net.BindException: Address already in use: JVM_Bind:80

表示端口80由Tomcat服务器配置,并且已由计算机上运行的其他某些应用程序使用。 如果打开,请退出Skype或将Skype或其他应用程序端口中的默认端口更改为80以外的其他端口。或者在您的config文件夹下的server.xml文件中将tomcat端口更改为80以外的其他端口(例如8080或9090) tomcat安装目录。

exceptionjava.net.BindException: Address already in use: JVM_Bind

意味着你没有正确停止tomcat服务器而你正试图再次启动服务器。 在Eclipse中,我的解决方案是从服务器选项卡中删除项目,然后右键单击并在服务器上运行项目。 这将项目添加回Tomcat 7并且我没有得到BindException错误。 这是因为您最后一次使用而不停止Tomcat服务器时关闭了eclipse。

我犯了一个愚蠢的错误,我花了2个小时才解决它。我在这里提到它可能对其他人有帮助。错误是我启用了ssl连接器并将https和http端口都改为相同的数字。

如果您有一些进程侦听端口8080,那么您始终可以配置tomcat以侦听其他端口。 通过编辑位于tomcat服务器conf目录下的server.xml来更改侦听器端口。

在server.xml中搜索Connector port="8080"并将端口号更改为其他端口。

错误:

Tomcat:java.net.BindException:已在使用的地址:JVM_Bind:80

表明端口80已经在使用中。
你可以:

  • 尝试搜索该过程并将其停止
  • 让你的tomcat在不同的(免费)端口上运行

另请参阅: 部署错误:Tomcat启动失败,服务器端口8080已在使用中

我删除了我的服务器并将其添加回来。 发生这种情况是因为我通过任务管理器手动关闭了eclipse,并没有关闭tomcat。

C:\ Program Files(x86)\ Apache Software Foundation \ Tomcat 7.0 \ conf

Source文件夹中的Server.xml文件中的端口ID是8080.将端口号更改为8081 …等

我完全忘记了我之前安装了另一个版本的Apache Tomcat,这导致了这个问题。 所以,只需尝试卸载以前的版本。 希望能帮助到你。

我在使用tomcat的spring项目中遇到了这个问题:

已在使用的地址:JVM_Bind

bin文件夹的截图

为解决此问题,我在tomcat / bin文件夹中运行了shutdown.bat文件。