无法在 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 module 的 chdir
参数在命令中为属性文件设置正确的 path
或在命令中设置完整路径。
我正在尝试运行以下命令:
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 module 的 chdir
参数在命令中为属性文件设置正确的 path
或在命令中设置完整路径。