groovyで別groovyファイルをインクルードもどき。 2007/10/21

groovyで別groovyファイルをインクルードもどき。

groovyでinclude 他のgroovyファイルができたらいいなと確かに思うときがあります。
importではなくてです。

もしかして、なんかいい方法があるかもしれない。調査が足りないか。

RE: How do I include one groovy script w/ in another?

で、過去のメーリングリストで、たしかにeval使えばいいのかということでためしてみたらできました。

しかし、この方法だとファイルパスがちょっと嫌な感じします。

試したコード。
t_inc.groovyファイル


evaluate(new File("./src/c.groovy"))

println "i am t_inc"
println ok


c.groovyファイル

ok = "ok ok ok "
println "i am c.groovy ${ok}"


t_inc.groovyを実行すると、c.groovyを読み込むって感じです。
ファイルパスは工夫する必要がありますね。

c.groovyで定義した変数を読み取ることができます。
その際には定義もとでdefをつけるとローカル変数になってしまいますので、t_inc.groovyで読み取ることができなくなってしまいます。


参考
@IT:Groovyに触ってみよう
のまとめの章

: