Address already in use: JVM_Bind(端口冲突)

简介:

1.错误描述

2011-7-20 11:05:18 org.apache.catalina.core.StandardServer await
严重: StandardServer.await: create[8005]: 
java.net.BindException: Address already in use: JVM_Bind
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:359)
at java.net.ServerSocket.bind(ServerSocket.java:319)
at java.net.ServerSocket.<init>(ServerSocket.java:185)
at org.apache.catalina.core.StandardServer.await(StandardServer.java:373)
at org.apache.catalina.startup.Catalina.await(Catalina.java:662)
at org.apache.catalina.startup.Catalina.start(Catalina.java:614)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:289)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:414)
2011-7-20 11:05:18 org.apache.coyote.http11.Http11Protocol pause

2.原因分析

从上面的描述中就可以看到,是因为端口8005被占用了。

3.解决方法

在cmd中输入命令:netstat -ano,查看所有端口的占用情况,找到占用端口8005的进程pid,然后在任务管理器中删除该进程,再启动tomcat就可以了。这里如果觉得使用cmd命令不方便的话,可以使用一个叫做TCPView的软件。

cmd下查看端口如下图所示:


TCPView下爱看端口如下图所示:


4.通常出现Address already in use: JVM_Bind错误的可能性分析

I.就是当前端口已经有别的程序在占用着,所以要么把占用这个端口的程序关闭,要么重新换一个端口
II.端口号被占用,如果你有装oracle的话,有可能是oracle使用了8080端口,oracle安装后并且如果启动了OracleHttp服务会占用8080端口
III.我认为很可能是多启动了几次TOMCAT,在ECLIPSE下重复启动TOMCAT就会出现这个问题,你去调查一下看看是否是这个原因.
IV.如果不是windows操作系统,那么80端口已经被占用.如果是windows操作系统.请检查是否装有IIS.
V.启动了多个Tomcat。
我就是因为启动了两个Tomcat,所以才会报这样的错误,通常情况下, 多次启动Tomcat或者非正常关闭Myeclipse,但是占用端口的进程没有关闭,也会出现这样的错误。解决方法是关闭javaw.exe进程。



本文转自xwdreamer博客园博客,原文链接:http://www.cnblogs.com/xwdreamer/archive/2011/07/20/2296974.html,如需转载请自行联系原作者

目录
相关文章
|
11月前
|
网络协议 API
端口复用(bind error: Address already in use 问题)
端口复用(bind error: Address already in use 问题)
450 0
|
Java
JAVA 端口被占用 报错解决方案:java.net.BindException: Address already in use: bind
JAVA 端口被占用 报错解决方案:java.net.BindException: Address already in use: bind
150 0
|
人工智能 监控 Java
IDEA启动tomcat 端口1099被占用(1099 is already in use)
IDEA启动tomcat 端口1099被占用(1099 is already in use)
IDEA启动tomcat 端口1099被占用(1099 is already in use)
|
应用服务中间件
【端口号清除工具】port is already in use解决利器,从此告别每次输入命令杀端口
【端口号清除工具】port is already in use解决利器,从此告别每次输入命令杀端口
135 0
|
Oracle 关系型数据库 应用服务中间件
java.net.BindException: Address already in use: JVM_Bind
java.net.BindException: Address already in use: JVM_Bind
98 0
|
人工智能
Port 8082 was already in use.* 8082端口占用
Port 8082 was already in use.* 8082端口占用
|
应用服务中间件
Idea解决Web server failed to start. Port 8080 was already in use.端口被占用
Idea解决Web server failed to start. Port 8080 was already in use.端口被占用
645 5
Idea解决Web server failed to start. Port 8080 was already in use.端口被占用
|
Java
SpringBoot报错:端口被占用Address already in use(Failed to start component [Connector[HTTP/1.1-8080)
SpringBoot报错:端口被占用Address already in use(Failed to start component [Connector[HTTP/1.1-8080)
369 0
SpringBoot报错:端口被占用Address already in use(Failed to start component [Connector[HTTP/1.1-8080)
|
Java 应用服务中间件
Springboot 项目跑起来端口被占用 The port may already be in use.
Springboot 项目跑起来端口被占用 The port may already be in use.
162 0
Springboot 项目跑起来端口被占用 The port may already be in use.
|
消息中间件
ActiveMQ 启动报错 Address already in use: JVM_Bind 5672
ActiveMQ 启动报错 Address already in use: JVM_Bind 5672
278 0
ActiveMQ 启动报错 Address already in use: JVM_Bind 5672