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住在同一个用户下时间长了,想换个环境生活吧。

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