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
exception : java.net.BindException: Address already in use: JVM_Bind:80
表示端口80由Tomcat服务器配置,并且已由计算机上运行的其他某些应用程序使用。 如果打开,请退出Skype或将Skype或其他应用程序端口中的默认端口更改为80以外的其他端口。或者在您的config文件夹下的server.xml文件中将tomcat端口更改为80以外的其他端口(例如8080或9090) tomcat安装目录。
exception : java.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
为解决此问题,我在tomcat / bin文件夹中运行了shutdown.bat文件。