にターゲットマシン上でJavaのjarコマンドを実行することができません:ターゲットマシン上でこれを実行しようとしているときに、私が以前直面している問題の私は、次のコマンドを実行しようとしていますAnsible
java -jar jar-from-application.jar --file myown.properties
カップル。上記のコマンドを実行する前に、Tomcatを実行して、warファイルを完全に配備する必要があります。これは私が前提条件が満たされていることを保証するために行ったことです。 Tomcatの場合:その後、
nohup startup.sh
とステータス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
それは正しく2つの上記の手順を行いますが、次のタスクは
を実行するときjava -jar jar-from-application.jar --file myown.properties
何らかの理由で、プロパティファイルを読み取ることができないと言われています。しかし、ローカルのリモートマシンで同じjarコマンドを実行すると、完全に動作します。私はcurlコマンドをうまく実行した後に待ち時間を追加しました。ちょうどその場合には違いがありません。私は以下のこともやってみました:
nohup java -jar jar-from-application.jar --file myown.properties
オンラインでも示唆されていたように、それでも違いはありませんでした。どんな提案も感謝します。ありがとうございました。
プロパティファイルのパスを完全に修飾してみてください。 '--file/path/to/myown.properties'の場合は、アクセス権が正しいことを確認してください。 –
@Henrik Pingelによって提案されたように私はchdirをやったが、私はあなたの絶対的な道をやってみた。私が望んでいたファイルの代わりに、他のファイルを読み込もうとしていました。ありがとう。 – user3044240