一般在Linux上部署項目我所知道的有很多方法:有最簡單的手動打個war包上傳服務器,然后重啟tomcat運行的。還有maven借助插件遠程發布項目的。還有很多持續集成的工具jenkins等等。
但是有的時候重啟tomcat會被卡住,他會一直卡在 (通過./catalina.sh run方法可以查看輸出到標准輸出流的日志)
INFO: Deploying web application directory /home/tutor/apache-tomcat-7.0.73/webapps/manager .....
大概是這個地方
排除項目自身的原因,移除發布的項目war包.單純啟動一個空的tomcat就會卡很久有的十分鍾(我試過)
經過查詢找到如下解決方法:
解決方法如下:
將$JAVA_HOME/jre/lib/security/Java.security內,將securerandom.source的內容改為file:/dev/./urandom即可
Linux或者部分unix系統提供隨機數設備是/dev/random 和/dev/urandom ,兩個有區別,urandom安全性沒有random高,但random需要時間間隔生成隨機數。
可能在生成隨機數的時候卡住了,導致tomcat啟動不了
在服務器啟動時也可以加上參數 -Djava.security.egd=file:/dev/./urandom
通過修改現在tomcat 能夠快速開啟,也能快速的發布項目了。