启动tomcat时,一直卡在Deploying web application directory这块的解决方案

Posted 小豪豪

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了启动tomcat时,一直卡在Deploying web application directory这块的解决方案相关的知识,希望对你有一定的参考价值。

本来今天正常往服务器上扔一个tomcat 部署一个项目的,

最后再启动tomcat 的时候 发现项目一直都访问不了,看了一下日志:

[email protected] bin]# tail -f ../logs/catalina.out
09-Jun-2017 15:57:06.666 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["ajp-nio-8009"]
09-Jun-2017 15:57:06.667 INFO [main] org.apache.tomcat.util.net.NioselectorPool.getSharedSelector Using a shared selector for servlet write/read
09-Jun-2017 15:57:06.667 INFO [main] org.apache.catalina.startup.Catalina.load Initialization processed in 535 ms
09-Jun-2017 15:57:06.684 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service Catalina
09-Jun-2017 15:57:06.684 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet Engine: Apache Tomcat/8.0.15
09-Jun-2017 15:57:06.690 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /opt/apache-tomcat-8.0.15-server/webapps/ROOT

 

发现始终都卡在这个目录上,然后我就等,一直等了差不多有7、8分钟才完全启动起来,这就让我很诧异,

webapps下没有自己的项目光跑tomcat自己的项目都卡成这样,这还了得,看来tomcat想上天啊这是,我就查阅了一下资料,

发现网上说了很多,大部分是废话,不过在这其中发现了一篇文章说的非常好,有效的解决了当前的问题。

http://blog.csdn.net/njchenyi/article/details/46641141

这篇文章的大意就是下面这句话

linux或者部分unix系统提供随机数设备是/dev/random 和/dev/urandom ,

两个有区别,urandom安全性没有random高,但random需要时间间隔生成随机数。jdk默认调用random。

然后就很简单啦,找到对应的配置文件去修改就好了

找到jdk1.x.x_xx/jre/lib/security/Java.security文件,在文件中找到securerandom.source这个设置项,将其改为:

securerandom.source=file:/dev/./urandom

修改完毕后,试了一下,ok果然非常好使。

以上是关于启动tomcat时,一直卡在Deploying web application directory这块的解决方案的主要内容,如果未能解决你的问题,请参考以下文章

Tomcat或应用启动卡在“INFO:Deploying web application directory......”

JDK 11,Tomcat卡在Deploying web application directory

tomcat启动时非常慢,启动时 一直卡在Root WebApplicationContext: initialization completed

重复启动Tomcat时,大概率出现Deploying web application direct

Service Fabric 群集卡在状态 = 正在部署

Tomcat 启动卡在 Root WebApplicationContext: initialization completed in