Tomcat 啓動報錯 org.apache.tomcat.util.net.AprEndpoint.allocatePoller Poller creation failed

問題:

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住在同一個用戶下時間長了,想換個環境生活吧。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章