2011-06-21 4 views
0

GroovyConsoleで無限ループのスクリプトを誤って実行しました。 : - \ヒープダンプでGroovyConsoleスクリプトの文字列バージョンを検索

マーフィーの法則のために、私は3時間か4時間かけて自分の仕事を保存していません。 GroovyConsoleプロセスを終了する前に、ヒープをダンプしました。この時点で実行していたScriptのStringバージョンを見つけることができました。

クラスが隠れる可能性のあるヒント可能です ?

+0

なぜgroovyコンソールのテキストをコピー・ペーストしていないのですか?私は誰もがこれで助けることができれば非常に感銘を受けた、私は(申し訳ありません、そして幸運)ことはできません。 –

+0

@DonのUIはフリーズしています... – Grooveek

答えて

2

私の推測が正しいと思います。 groovy.ui.Consoleオブジェクトは、スクリプトの変更の履歴を保持します。私はあなたに私の最大の喜びのために私のスクリプトを返すOQLクエリを返します。私はOQLプラグインでVisualVMの中でそれを実行しましたが、私はjhatを使用している可能性があります。1回自分のコードを失ってしまった

select x.history.elementData[x.history.elementData.length-2].allText.toString() from groovy.ui.Console x 

絶望グルーヴィーな開発者は、確かに:-)今releavedされる可能性があります私は

ていますスクリプトの文字列バージョンは別のオブジェクトに存在する可能性があります。