tomcat启动不成功(点击startup.bat闪退)的解决办法

  • 在安装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端口解释

原文地址:https://www.cnblogs.com/Dyleaf/p/8049669.html