无法在 Ansible 中的目标机器上执行 运行 java jar 命令

Unable to run java jar command on target machine in Ansible

我正在尝试运行以下命令:

java -jar jar-from-application.jar --file myown.properties

我之前在目标机器上尝试 运行 时遇到了几个问题。 Tomcat 需要 运行ning 并且 war 文件需要在我 运行 上述命令之前完全部署。这就是我所做的,以确保满足先决条件。对于 Tomcat:

nohup startup.sh

然后使用 curl 检查已部署的文件 bu 以检查状态 200:

- name: Check if URL is available
  shell: curl --head --silent http://target-mchine:8080/restoftheurl
  register: result
  until: result.stdout.find("200 OK") != -1
  retries: 12
  delay: 10

它正确地完成了上述两个步骤,但是当下一个任务是 运行

java -jar jar-from-application.jar --file myown.properties

它出于某种原因说它无法读取属性文件。但是,如果我 运行 在本地远程机器上执行相同的 jar 命令,那么它就可以完美运行。我什至在成功执行 curl 命令后添加了一些等待时间,以防万一,但这没有任何区别。我也尝试执行以下操作:

nohup java -jar jar-from-application.jar --file myown.properties

正如网上建议的那样,但这也没有任何区别。任何建议将不胜感激。谢谢。

确保使用 command modulechdir 参数在命令中为属性文件设置正确的 path 或在命令中设置完整路径。