Tomcat常見錯誤彙總

tomcat啓動沒有問題,訪問localhost後包錯,很有可能是jar包的衝突。

Tomcat啓動錯誤(80端口被佔用)的處理方法

錯誤描述:

2012-2-23 17:11:31 org.apache.coyote.http11.Http11BaseProtocol start

嚴重: Error starting endpoint

java.net.BindException: Address already in use: JVM_Bind:80

         at org.apache.tomcat.util.net.PoolTcpEndpoint.initEndpoint(PoolTcpEndpoint.java:298)

         at org.apache.tomcat.util.net.PoolTcpEndpoint.startEndpoint(PoolTcpEndpoint.java:313)

         at org.apache.coyote.http11.Http11BaseProtocol.start(Http11BaseProtocol.java:151)

         at org.apache.coyote.http11.Http11Protocol.start(Http11Protocol.java:76)

         at org.apache.catalina.connector.Connector.start(Connector.java:1090)

         at org.apache.catalina.core.StandardService.start(StandardService.java:457)

         at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)

         at org.apache.catalina.startup.Catalina.start(Catalina.java:552)

         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:585)

         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)

         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)

2012-2-23 17:11:31 org.apache.catalina.startup.Catalina start

嚴重: Catalina.start:

LifecycleException: service.getName(): "Catalina"; Protocol handler start failed: java.net.BindException: Address already in use: JVM_Bind:80

         at org.apache.catalina.connector.Connector.start(Connector.java:1097)

         at org.apache.catalina.core.StandardService.start(StandardService.java:457)

         at org.apache.catalina.core.StandardServer.start(StandardServer.java:700)

         at org.apache.catalina.startup.Catalina.start(Catalina.java:552)

         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:585)

         at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:295)

         at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:433)

2012-2-23 17:11:31 org.apache.catalina.startup.Catalina start

信息: Server startup in 6980 ms

關鍵信息:

java.net.BindException: Address already in use: JVM_Bind:80

錯誤原因:

80端口被其他的應用佔用!

解決方案:

第一步,命令提示符號,執行命令:netstat –ano

Active Connections

Proto Local Address          Foreign Address        State           PID

TCP    0.0.0.0:80           0.0.0.0:0              LISTENING       812

TCP    0.0.0.0:80           0.0.0.0:0              LISTENING       812

可見,佔用80端口的進程的PID是812

第二步,命令提示符號,執行命令:tasklist

映像名稱                       PID 會話名              會話#       內存使用
========================= ======== ================ =========== ============

httpd                              812 Console                 0      5,899K

可見,該佔用80端口的進程是httpd

第三步,通過任務管理器,終止進程httpd

第四步,重新啓動tomcat,即可正常啓動

發佈了49 篇原創文章 · 獲贊 15 · 訪問量 25萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章