Grails: println работает только иногда или что-то

Я делаю новый проект Grails и помещаю его в загрузчик:

ExpandoMetaClass.enableGlobally()

Integer.metaClass.precision = {->return 1}
println 3.precision()
println "rofl"
println 15.precision()

И он делает то, что я ожидаю, запускает печать приложений:

1
rofl
1

Но если я достану println "rofl" это не будет печатать тот второй. Он просто печатает один 1 без rofl... WTF?

Опять же, потому что это не имеет никакого смысла для меня, этот код:

ExpandoMetaClass.enableGlobally()

Integer.metaClass.precision = {->return 1}
println 3.precision()
//println "rofl"
println 15.precision()

печатает:

1

2 ответа

Это настройка по умолчанию для Ubuntu и не имеет ничего общего с JVM. Консоль не будет повторять строки, если они одинаковые. Обновлю этот ответ, когда вспомню как его отключить.

Майки, я не могу придумать причину почему. Можете ли вы попробовать в другой среде? Я только что попробовал это быстро под Groovy Версия: 1.8.0 JVM: 1.6.0_20, Win7 и Grails 2 BootStrap и действие Grails Controller и извините, чтобы сказать "это работает на моем". Так что все, что я могу думать, это то, что это как-то связано с версией, которую вы используете, или с тем, как она настроена. Как ты это делаешь?

Другие вопросы по тегам