問題:
Tomcat 啓動報錯,錯誤提示爲:
02-Apr-2020 18:45:38.774 嚴重 [main] org.apache.tomcat.util.net.AprEndpoint.allocatePoller Poller creation failed
org.apache.tomcat.jni.Error: 730055: ???????????????×??ò???????ú????????????
at org.apache.tomcat.jni.Poll.create(Native Method)
at org.apache.tomcat.util.net.AprEndpoint.allocatePoller(AprEndpoint.java:881)
at org.apache.tomcat.util.net.AprEndpoint$Poller.init(AprEndpoint.java:1414)
at org.apache.tomcat.util.net.AprEndpoint.startInternal(AprEndpoint.java:707)
at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:841)
at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:491)
at org.apache.catalina.connector.Connector.startInternal(Connector.java:986)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:459)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:789)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.startup.Catalina.start(Catalina.java:630)
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:351)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)
02-Apr-2020 18:45:38.806 嚴重 [main] org.apache.tomcat.util.net.AprEndpoint.allocatePoller Poller creation failed
org.apache.tomcat.jni.Error: 730055: ???????????????×??ò???????ú????????????
at org.apache.tomcat.jni.Poll.create(Native Method)
at org.apache.tomcat.util.net.AprEndpoint.allocatePoller(AprEndpoint.java:881)
at org.apache.tomcat.util.net.AprEndpoint$Poller.init(AprEndpoint.java:1431)
at org.apache.tomcat.util.net.AprEndpoint.startInternal(AprEndpoint.java:707)
at org.apache.tomcat.util.net.AbstractEndpoint.start(AbstractEndpoint.java:841)
at org.apache.coyote.AbstractProtocol.start(AbstractProtocol.java:491)
at org.apache.catalina.connector.Connector.startInternal(Connector.java:986)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.StandardService.startInternal(StandardService.java:459)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:789)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:145)
at org.apache.catalina.startup.Catalina.start(Catalina.java:630)
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:351)
at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:485)
診斷:
最開始認爲可能是端口衝突了,就把server.xml中的端口逐個調整了一下,重啓,問題依舊。
後有認爲可能是文件jar包缺失,可能是同事登陸服務器操作時,不小心誤刪了Tomcat下的文件。
就把Tomcat複製到本地,想重現確認一下錯誤。
結果,Tomcat可以正常啓動。
因爲,服務器爲windows環境,建了兩個用戶,每個用戶下有一個Tomcat在跑,登陸到另外一個用戶下看看情況,結果發現Tomcat跑的溜溜的。
綜合網上搜到的一些解決方法,說是防火牆開啓了還是怎麼着,首先防火牆處於關閉狀態,其次兩個服務,一個能跑,一個不能跑,應該是服務本身的問題。
解決方法:
情況確實是比較詭異,沒有頭緒,無奈之下,把報錯的Tomcat複製到用戶2下,啓動嘗試,結果可以正常啓動。又把用戶2下的Tomcat在用戶1下啓動,也可以正常啓動。
替換後,服務可以正常啓動後,並沒有把報錯的Tomcat重新在用戶1下啓動,進行進一步的確認。
現在服務是正常了,但原因不知道是爲什麼 ,可能是Tomcat住在同一個用戶下時間長了,想換個環境生活吧。