错误信息
org.apache.catalina.core.StandardServer await
严重: StandardServer.await: create[8005]:
java.net.BindException: Address already in use
at java.net.PlainSocketImpl.socketBind(Native Method)
at java.net.PlainSocketImpl.bind(PlainSocketImpl.java:365)
at java.net.ServerSocket.bind(ServerSocket.java:319)
at java.net.ServerSocket.(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)
org.apache.coyote.http11.Http11Protocol pause
这个错误意思是说8005端口已经被占用了,通常是eclipse等编译器非正常退出导致的,网上也有很多解决方案都讲的太粗糙了,这里写个容易看懂的
关闭eclipse等编译器
找到占用端口8005的进程号
win+R打开CMD
命令:netstat -ano | findstr "8005"
可以看出端口被进程号为3228
的进程占用
查看进程号对应的进程名
命令:tasklist | findstr "3228"
这里的3228用你在上面查到的进程号代替
完成后看到,原来是javaw.exe
占用了端口
结束该进程
命令:taskkill /f /t /im javaw.exe
再次启动Tomcat 应该就可以成功啦~