我创建了一个全新的grails项目,并将其放入引导程序中:
ExpandoMetaClass.enableGlobally()
Integer.metaClass.precision = {->return 1}
println 3.precision()
println "rofl"
println 15.precision()它做了我所期望的,run-app打印:
1
rofl
1但是如果我取出println "rofl",它就不会打印第二个了。它只打印一个1,没有rofl...见鬼?
同样,因为这对我来说没有任何意义,所以这段代码:
ExpandoMetaClass.enableGlobally()
Integer.metaClass.precision = {->return 1}
println 3.precision()
//println "rofl"
println 15.precision()打印:
1发布于 2012-01-17 06:48:17
麦基,我想不出原因。你能在不同的环境中尝试吗?我只是在Groovy版本:1.8.0JVM: 1.6.0_20,Win7和Grails 2 BootStrap和一个Grails Controller操作下快速地尝试了一下,很抱歉地说“它在我的上有效”。所以我所能想到的就是它与你正在使用的版本或者它是如何设置的有某种关系。你是怎么运行这个的?
发布于 2012-09-30 02:54:36
这是ubuntu的默认设置,与JVM无关。如果行相同,控制台不会重复行。当我记起如何关闭它时,我会更新这个答案。
https://stackoverflow.com/questions/8884569
复制相似问题