jeecg Error was Port already in use: 40001解决办法

在实际项目开发中会用到很多优秀的项目,比如jeecg,就是一款优秀开源的RBAC模型的项目。

能够有效的提供开发效率,为小项目提供敏捷开发的一种方式。


jeecg部署到centos环境 ,并部署到tomcat中遇到问题。

重启tomcat时报Error was Port already in use: 40001 错误。


原因:jeecg使用的本地缓存ehcache技术并占用40001端口,可以从ehcache.xml 文件中看到


解决办法:查找40001端口占用的进程号,然后kill掉

一般使用 lsof -i:40001 

然后 kill -9 进程号


然后我就写了一个命令,一条命令解决。

[plain] view plain copy
  1. kill -9 `lsof -i:40001 |awk 'NR==2{print $2}'`  

可以把这条命令放入 tomcat  startup.sh 或者 shutdown.sh中

或者单独搞一个脚本restartTome.sh

[plain] view plain copy
  1. #!/bin/bash  
  2.   
  3. set -m  
  4.   
  5.   
  6. echo > /usr/local/apache-tomcat-7.0.62/logs/catalina.out  
  7.   
  8. /usr/local/apache-tomcat-7.0.62/bin/shutdown.sh  
  9.   
  10. kill -9 `lsof -i:40001 |awk 'NR==2{print $2}'`  
  11.   
  12. /usr/local/apache-tomcat-7.0.62/bin/startup.sh  
  13.   
  14.   
  15. tail -f /usr/local/apache-tomcat-7.0.62/logs/catalina.out  

这里要注意的是 set -m 这个关键的地方一定要添加。不信你就别加。-。-

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试