shell文件捕获java抛出的exception
原因
在shell脚本之中,执行下面命令运行jar包并且使用$?来捕获运行结果的时候,如果java抛出了异常,会使得$?的值为0,并不会抛出我们需要的1,在这种情况下,如果想要重试或者进行其他操作就是不可行的。
#!/bin/bash
java -cp xxx.jar xxx.Class
echo $?
# 解决方案
为了解决这一问题,我们需要在shell脚本之中进行一些特定的操作来捕获异常,代码如下
#!/bin/bash
java -cp xxx.jar xxx.Class 2>/dev/null
echo $?
版权声明:本文为zedwar原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。