web-dev-qa-db-ja.com

IntelliJで1ステップ戻る方法

デバッグセッションで実行されたコードを逆方向に進めることは可能ですか?

たとえば、abc()というメソッドをステップオーバーし、12しかし、返された値を再確認した後、5 の代わりに 12。以前の場所に戻り、メソッドにステップインして何が起こっているかを確認するにはどうすればよいですか? Visual Studioでこれを実行できることは知っていますが、intelliJでこれを実行する方法は見つかりません。

58
Cristian Gutu

目的のポイントに到達するまでフレームをドロップできます。これは正確に後退しているわけではありませんが、多くの点で非常に似ています。

Tiagoが以下で言及しているように、これはアプリケーションのグローバルな状態を元に戻しません-ステートレスサービスを開発している場合は大きな懸念ではありませんが、スイングアプリケーションを開発している場合は可能性があります)。

デバッガーツールバーでは、次のようになります。 Drop FrameIdea 2016.3以降、ドロップフレームアイコンは次のようになります drop frame in idea 2016.3

完全なドキュメントはこちらから入手できます: IntelliJ Debugger Docs 、および StackOverflow Drop Frame Question があり、いくつかの有用な回答があります

66

フレームをドロップするだけでなく、実際に後退できるChronon Debuggerプラグインを確認してください http://blog.jetbrains.com/idea/2014/03/try-chronon-debugger-with-intellij-idea- 13-1-eap /

2
tales