4

事前にお詫び申し上げます。私はgroovyが初めてです。私が抱えている問題は、異なる機能を実行する 3 つの groovy スクリプトがあり、スクリプト 1 からの出力をスクリプト 2 の入力として使用し、スクリプト 2 の出力をスクリプト 3 の入力として使用して、メインの groovy スクリプトからそれらを呼び出す必要があることです。

私は次のコードを試しました:

script = new GroovyShell(binding)
script.run(new File("script1.groovy"), "--p",  "$var" ) | script.run(new File("script2.groovy"), "<",  "$var" )

上記のコードを実行すると、最初のスクリプトは正常に実行されますが、2 番目のスクリプトはまったく実行されません。

スクリプト 1 は、"--p", "$var"コードを使用してパラメーターとして int を取ります。これは、以下を使用してメイン スクリプトで正常に実行されscript.run(new File("script1.groovy"), "--p", "$var" )ます。 - スクリプト 1 の出力は xml ファイルです。

メインの groovy スクリプトで単独で実行するscript.run(new File("script2.groovy"), "<", "$var" )と、何も起こらず、システムがハングします。

を使用してコマンドラインからスクリプト 2 を実行でき、groovy script2.groovy < input_file正常に動作します。

どんな助けでも大歓迎です。

4

2 に答える 2