我不小心在GroovyConsole中运行了一个带有无限循环的脚本。 : - \
为了墨菲定律,我在3或4个小时内没有保存我的工作。因此,在杀死GroovyConsole进程之前,我已经转储了堆,希望找到此时正在运行的Script的String版本
您是否有提示可以隐藏哪个类,或者是否可以隐藏?
答案 0 :(得分:2)
所以,我的猜测是正确的。 groovy.ui.Console
对象保留脚本更改的历史记录。我给你的OQL查询给了我最好的乐趣。我使用OQL插件在VisualVM中运行它,但我可以使用jhat:
select x.history.elementData[x.history.elementData.length-2].allText.toString() from groovy.ui.Console x
一旦失去代码的绝望的常规开发者现在可能会被释放:-)我确定
脚本的字符串版本可能存在于另一个对象中。我很乐意听到其他解决方案