web-dev-qa-db-fra.com

Comment faire un pas en arrière dans IntelliJ?

Est-il possible de revenir en arrière dans le code exécuté dans une session de débogage?

Par exemple, je passe par-dessus une méthode appelée abc() espérant obtenir 12 mais après avoir revérifié la valeur retournée, je remarque que c'est 5 au lieu de 12. Comment puis-je revenir à ma position précédente et entrer dans la méthode pour voir ce qui se passe? Je sais que vous pouvez le faire dans Visual Studio, mais je ne trouve pas comment le faire dans IntelliJ.

58
Cristian Gutu

Vous pouvez déposer les cadres jusqu'à ce que vous atteigniez le point où vous voulez être. Ce n'est pas exactement un pas en arrière, mais c'est assez similaire à bien des égards.

Bien que Tiago le mentionne ci-dessous, cela ne reviendra pas sur l'état global de votre application - ce qui n'est pas une énorme préoccupation si vous développez des services sans état, mais pourrait l'être si vous développez des applications swing (si quelqu'un le fait réellement) ).

Dans la barre d'outils du débogueur, cela ressemble à ceci: Drop Frame. Dans Idea 2016.3 et plus tard, l'icône de drop-frame ressemble à ceci drop frame in idea 2016.3

La documentation complète est disponible ici: IntelliJ Debugger Docs , et il y a StackOverflow Drop Frame Question , avec quelques réponses utiles

66
Engineer Dollery

Découvrez le plugin Chronon Debugger qui vous permet en fait de prendre du recul, pas seulement de supprimer le cadre http://blog.jetbrains.com/idea/2014/03/try-chronon-debugger-with-intellij-idea- 13-1-eap /

2
tales