JVMがCommandLineJobRunnerを実行するように指示することにより、バッチジョブをコマンドラインから開始することができます。 the JavaDocによれば、-stop
の追加パラメータを指定して同じコマンドを実行すると、ジョブを停止します:コマンドラインから開始されたSpringBatchジョブの停止
このクラスの引数により分離((スペースで区切られた)コマンドライン 上、または標準入力を介して提供することができます改行)。
jobPath jobIdentifier(jobParameters)を が
jobPath
次のようにコマンドラインオプションがある*:仕事-restart
を含むXMLアプリケーションコンテキストを次のように彼ら である(別売)を再起動します最後に失敗した実行-stop
:(オプション)実行中の実行を停止するには-abandon
:(オプション)放棄する停止した実行-next
:(オプション)ジョブのjobParametersIncrementerに従って次のシーケンスを開始する。指定子:ジョブの名前またはジョブ実行のID(-stop、-abandonまたは-restartの場合) 。jobParameters
:key = valueのペアの形式で指定されたジョブを起動するために使用される0から多くのパラメータ。
ただし、main()メソッドのJavaDocでは、-stopパラメータは指定されていません。 docjar.comのコードを見ると、-stopパラメータの使用は期待できません。
コマンドラインから起動されたバッチは、実行中のバッチが非トランジェントのjobRepository
によってバックアップされている場合にのみ停止すると思われますか?コマンドラインでバッチを実行してHSQL(つまりメモリ内)にデータを格納するだけの場合は、CTRL-C
など以外のジョブを停止する方法はありませんか?