groovy 1.0-jsr-05 released
http://docs.codehaus.org/display/GROOVY/2006/02/13
>Warning: there is an important change in scripts between "def-ed" variables and not "def-ed" variables. Defining a variable with the def keyword or with a concrete type creates a local variable which won't be stored in the binding. However, if you assign a variable which wasn't defined in your script, it will be stored in the binding of the script.
上記のことが原因なのかよくわからないがとりあえず既存のスクリプトが動かなくなった。
バージョンアップできず。
あとでjiraに報告せんと。。。
以下検証ソース。
1.0-jsr-05
>type closure.groovy class Test { def call() { [1].each { count -> println count [2].each { count2 -> println count println count2 [3].each { count3 -> println count println count2 println count3 [4].each { count4 -> println count println count2 println count3 println count4 } } } } } } a = new Test(); a.call() >groovy closure.groovy 1 1 2 groovy.lang.Reference@c41282e 2 3 groovy.lang.Reference@c41f401 groovy.lang.Reference@c41f385 3 4
1.0-jsr-04
>groovy closure.groovy 1 1 2 1 2 3 1 2 3 4
腐ってやがる、早過ぎたんだ