linux - 在 Bash 中检测 JAR 命令的失败

标签 linux bash jar error-detection

我正在 bash 中执行这个简单的 jar 命令:

jar cvfm control.jar Manifest <class list>

如何在执行此命令时自动检测故障? 失败我的意思是命令只是由于以下原因而无法执行:

  • Manifest 中的错误,
  • jar 命令本身使用不当,
  • 一些随机错误,例如 ClassNotFoundError

请注意,我有兴趣知道是否归档了正确的类集。所以我不会认为这是一个失败。

我目前只是使用详细选项来检查是否一切顺利。但是,我发现这很耗时。我只想知道 jar 命令是否成功归档了一些类文件集。有没有办法在 bash 中做到这一点?


我找到的关于此问题的最接近的其他资源是:How to detect error if archive of jar file failed? .但是,我对批处理文件一无所知,我有兴趣在 bash shell 中执行此操作。

最佳答案

这是查看命令是否成功的最基本方法:

if jar cvfm control.jar Manifest <class list> ; then
    echo "Success"
else
    echo "Oops!"
fi

如果只想检测失败,则反转测试:

if ! jar cvfm control.jar Manifest <class list> ; then
    echo "Oops!"
fi

或者显式测试结果:

jar cvfm control.jar Manifest <class list>
if (( $? )) ; then
    echo "Oops!"
fi

关于linux - 在 Bash 中检测 JAR 命令的失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15689421/

相关文章:

linux - 理解从进程内核栈中获取task_struct指针

bash - 在不使用 "source"的情况下读取 BASH 中的配置文件

macos - 如何替换通过麦克风传来的声音? OS X

java - 用python编辑jar文件

java - 使用 Ruby 将文件复制到 jar 文件中

java - 无法使用 init.d startscript 执行 jar

html - 外壳脚本 : Send html formatted email while inside an array

linux - 从安装 Zeppelin 的本地计算机到 Docker Spark 集群的连接

linux - Linux 中摩托罗拉 68000 的编程环境

python - 为什么有关 python 命令行启动的记录没有保存在历史记录中