Groovyスクリプトから、別のGroovyスクリプトを呼び出す方法
2ちゃんねる や、 他のGroovyに関するブログ でも、
別のスクリプトファイルをimportするにはどうしたらよいのか? という疑問が多いようです。
Contents
手段その1 : classファイル化して読み込む方法
簡単に思いつく方法として以下の流れでimportする方法があります。
- Groovyファイルをgroovycコマンドでコンパイルする
- コンパイルして出来たclassファイルをimportする
手段その2 : Groovyスクリプトファイルをそのままimportする方法
では、コンパイルせずにGroovyスクリプトのクラスを利用できないか?
いろいろ試した結果、非常に簡単なことが分かりました。
例を挙げます。
Main.groovy
ファイルから Printer.groovy
ファイル内のクラスを利用するケースを想定します。
Printer.groovy
Main.groovy
問題は実行時のオプション。
注意点
-cp
オプションはgroovy
コマンド実行時に指定するクラスパスになります。- 2つのスクリプトは同じディレクトリに配置します。
要は、呼び出し対象のスクリプト配置ディレクトリにクラスパスを通してあげればいい、ということです。
以下のように、OSの CLASSPATH環境変数 に設定されているディレクトリに Printer.groovy
スクリプトを配置してもしてもOKです。
ディスカッション
コメント一覧
まだ、コメントがありません