![ファイア アンド フォーゲット方式でリモート マシン上で Java jar を実行する](https://rvso.com/image/1586955/%E3%83%95%E3%82%A1%E3%82%A4%E3%82%A2%20%E3%82%A2%E3%83%B3%E3%83%89%20%E3%83%95%E3%82%A9%E3%83%BC%E3%82%B2%E3%83%83%E3%83%88%E6%96%B9%E5%BC%8F%E3%81%A7%E3%83%AA%E3%83%A2%E3%83%BC%E3%83%88%20%E3%83%9E%E3%82%B7%E3%83%B3%E4%B8%8A%E3%81%A7%20Java%20jar%20%E3%82%92%E5%AE%9F%E8%A1%8C%E3%81%99%E3%82%8B.png)
SSH 接続を確立して、リモート マシンで Java JAR を実行したいです。JAR は実行できますが、 を押すまで SSH セッションを閉じることができませんCTRLC。
以下はjarを実行するためのバッチファイルです。バッチファイル名はRun_service.batです。
@ECHO off java.exe -jar D:\NSXJarfiles\BulkSolve-0.0.1-SNAPSHOT.jar & exit
以下のコマンドを使用してSSHセッションからjarを実行しようとしています
ssh -v -o StrictHostKeyChecking=no -l userid IP "D:/Scripts/Run_Service.bat"
そこで、ssh セッションを確立し、セッション内で jar ファイルを実行できるようになりました。
サービスはポートで開始されました。
しかし、サービスが開始したら、SSH セッションを閉じる必要がありますが、 を押すまで閉じませんCTRLC。以下は、SSH セッションでサービスが開始されたときの画像です。いろいろ試しましたが、何も機能しませんでした。同じことを実行する方法を見つけられるよう、ご協力ください。
答え1
これを試して :
@ECHO off START /B javaw.exe -jar D:\NSXJarfiles\BulkSolve-0.0.1-SNAPSHOT.jar exit
答え2
タダ飯はありません。アプリをサービスとして実行したい場合は、アプリをサービスとしてインストールする必要があります。そうすれば、OS を再起動しても、人間の介入なしにアプリケーションが復活します。また、SSH サーバーから切断して、プロセスの実行を継続することもできます。( を試すこともできますcmd /c javaw.exe -jar D:\NSXJarfiles\BulkSolve-0.0.1-SNAPSHOT.jar
が、プロセスが停止すると復活しません)
スプリングブートについては、Windows サービス参照のセクションには、ウィンス、そして別途管理された例これらすべてをまとめる方法を説明する