开发者社区> 问答> 正文

如何从Shell脚本顺序运行jar文件

我试图在我的docker容器中一个接一个地运行两个Java应用程序。在我的dockerfile中,我指定了invoker.sh作为入口点。

ENTRYPOINT ["sh", "/opt/invoker.sh"]

然后,我使用此脚本运行两个jar文件。

#!/bin/sh
java -jar loader.jar
java -jar service.jar

但这不起作用。它给

错误:无法访问jarfile javaimpl-loader.jar

并且仅执行service.jar。当我尝试echo $(ls)它表明这两个jar文件都在那里。

但是如果我将脚本更改为

#!/bin/sh
echo $(java -jar loader.jar)
java -jar service.jar

然后两个罐子都起作用。为什么我不能使用第一个脚本。关于此问题的任何帮助。

问题来源:Stack Overflow

展开
收起
montos 2020-03-27 14:32:08 581 0
1 条回答
写回答
取消 提交回答
  • 似乎第一个示例被视为一行,您可以使用它。另外,我宁愿bash到/bin/sh。喜欢,

    #!/usr/bin/env bash
    java -jar loader.jar && java -jar service.jar
    

    回答来源:Stack Overflow

    2020-03-27 14:32:28
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Shell 脚本速查手册 立即下载
低代码开发师(初级)实战教程 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载