- 在安装Toamcat时,发现了以下的错误提示
17-Dec-2017 00:08:02.397 严重 [main] org.apache.catalina.core.StandardServer.await StandardServer.await: create[localhos
t:8005]:
java.net.BindException: Address already in use: JVM_Bind
at java.net.DualStackPlainSocketImpl.bind0(Native Method)
at java.net.DualStackPlainSocketImpl.socketBind(DualStackPlainSocketImpl.java:106)
at java.net.AbstractPlainSocketImpl.bind(AbstractPlainSocketImpl.java:387)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:190)
at java.net.ServerSocket.bind(ServerSocket.java:375)
at java.net.ServerSocket.<init>(ServerSocket.java:237)
at org.apache.catalina.core.StandardServer.await(StandardServer.java:440)
at org.apache.catalina.startup.Catalina.await(Catalina.java:758)
at org.apache.catalina.startup.Catalina.start(Catalina.java:704)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:353)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:493)
-
原因分析
从上面的描述中就可以看到,是因为端口8005被占用了。 -
那么就是解决问题了
目标:在Windows环境下,用netstat命令查看某个端口号是否占用,为哪个进程所占用.
操作:操作分为两步:(1)查看该端口被那个PID所占用;方法一:有针对性的查看端口,使用命令Netstat –ano|findstr “<端口号>”
,如图,图中第一行的端口号为135,所对应的PID为1004。
接下来就是看对应的端口号了
直接用命令查找,tasklist|findstr <PID号>
查找对应的进程名
如果存在这种找不到的情况,使用任务管理器吧。
杀死对应的冲突进程
然后开启,就成功啦!!!
附上参考
tomcat启动不成功(点击startup.bat闪退)的解决办法
Tomcat(8005,8080,8009)端口占用问题常见原因及解决方法
Address already in use: JVM_Bind(端口冲突)
netstat -ano 查看机器端口占用情况
Windows netstat 查看端口、进程占用
解决tomcat端口被占用以及杀死进程
Tomcat的8005、8009,8080端口解释