1

コマンドラインから呼び出されるSpringBatchアプリケーションを使用しています。コマンド全体ではなくスクリプトを実行できるように、その呼び出しをシェルスクリプトに入れたいと思います。

たとえば、私の呼び出しは次のようになります。

java -jar run = 1

問題は、実行ごとに、ジョブパラメータをインクリメントする必要があることです。シェルスクリプトでそれを実現する方法はありますか?

ありがとう

4

2 に答える 2

2

通常どおり、これにはインクリメント機能が必要です。

<bean id="simpleIncrementer"
class="org.springframework.batch.core.launch.support.RunIdIncrementer"/>
<job id="myJob" incrementer="simpleIncrementer">
</job>

このインクリメンターがCommandLineJobRunnerと連携するための秘訣は、タスクの実行時に-nextパラメーターを追加することです。

-next :(オプション)ジョブのJobParametersIncrementerに従ってシーケンスの次を開始します

このようなもの:

java –jar myjob.jar jobs/myjob.xml myjob -next
于 2012-09-27T11:36:26.117 に答える
1

次のようにforループを使用して、(ターミナルで)n回実行できます。

for i in {1..10}; do java -jar run=$i; done
于 2012-09-26T19:03:59.067 に答える