Service exit with a return value of 143, jsvc -wait 10, tomcat使用liquibase超时

本文解决了在使用Liquibase进行数据库版本管理时,Tomcat通过systemctl启动失败的问题。通过调整等待时间参数,避免了因jsvc默认超时设置导致的服务启动失败。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

公司Tomcat项目使用了liquibase做数据库版本管理,但在数据库为空的情况下,执行不成功。奇怪的是使用 service tomcat start 可以成功, 但使用 systemctl start tomcat 就不行。

日志打印了一句:

Service exit with a return value of 143

查了一下: https://bugs.archlinux.org/task/33372   有人说是 jsvc 的默认超时时间是20秒(计时了一下真是20秒),需要加一个参数

jsvc -wait 20 class MyClass

看不懂这个class的参数是啥意思。。

查看daemon.sh 找到 有一句:

问题解决

那我把这个参数 $SERVICE_START_WAIT_TIME 的值的时间 10秒改成240秒就行 , 问题解决(๑*◡*๑)

 

------------------------------------------------------------------------

原因:

要使用systemctl 代替 service,  配置 tomcat: https://blog.youkuaiyun.com/javandroid/article/details/81088494   需要用到 bin目录下的 commons-daemon-native.tar.gz , 将其解压编译,获得 unix/jsvc, 复制到 bin目录下

因为service tomcat start 没有用到jsvc, 所以不会有超时限制,但使用 systemctl start tomcat 有个jsvc的默认20秒限制

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值