小结
Tomcat服务碰到两个常见的问题,进行了解决。
问题及解决
Address already in use: JVM_Bind
端口被占用的问题经常会碰到,最常见的解决办法是把占用端口的进程进行关闭,或者是修改Tomcat使用的端口。如下:
netstat -ano | find "80"
taskkill /PID 73328 /F
实际上以下进程是不能杀掉的,这样就踢到铁板了。
C:\Users\Administrator>netstat -aon | find "80"
...
TCP 172.16.0.12:34905 172.16.22.40:8080 SYN_SENT 3712
找到3712
的这样一个进程,发现是TmListen.exe
,是Trend Micro的杀毒软件的。
C:\Users\Administrator>tasklist|findstr 3712
TmListen.exe 3712 Services 0 11,876 K
终极解决办法,重启计算机,问题解决。
No buffer space available ,tomcat启动报错
这个问题是个很诡异的错误,原因是部署的8080或8090 端口不在范围内。参考CSDN: No buffer space available ,tomcat启动报错,执行netsh int ipv4 set dynamicport tcp start=2000 num=63000
即可解决。
参考
Blogspot: Tomcat startup failed: Address already in use: JVM_Bind
【Eclipse】启动Tomcat时出现 Port “???” required by Tomcat v8.5 Server at localhost is already in use…解决方案
Stackoverflow: How to change port of tomcat from eclipse’s tomcat plugin
Statickoverflow: Error With Port 8080 already in use
Stackoverflow: Tomcat Server Error – Port 8080 already in use
CSDN: No buffer space available ,tomcat启动报错