Grails: println работает только иногда или что-то - PullRequest
0 голосов
/ 16 января 2012

Я делаю совершенно новый проект 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 ]

0 голосов
/ 29 сентября 2012

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

0 голосов
/ 17 января 2012

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

...