Comment puis-je modifier la valeur d'une variable pendant le débogage dans IntelliJ, de sorte que les montres sont mis à jour automatiquement?
J'ai le morceau de code suivant:
Matcher matchDays = m_daysRegex.matcher(e.getKey());
if (matchDays.matches()){
...
}
Où e.getKey()
est "Lundi-Vendredi".
Maintenant, j'ai déjà exécuté la première ligne et se tenir debout sur la si expression. À l'aide de la fenêtre d'observation-je évaluer les matchDays.matches()
expression et d'ajouter des montres sur les différentes méthodes de matchDays
. Ensuite, en utilisant la même fenêtre de surveillance-je évaluer les matchDays = m_daysRegex.matcher("Mon,Fri")
et matchDays.matches()
expressions pour voir ce qui se passe. Malheureusement, la fenêtre ne s'actualise pas en lui-même et il n'a pas explicitement un bouton pour le faire:
Sur l'image ci-dessus, remarquez comment matchDays.group(0)
affiche "Lun,Ven", mais matchDays.group(1)
affiche "Lundi-Vendredi". C'est parce que j'ai actualisé manuellement l'ancienne, mais de tout le reste montrent encore les anciennes valeurs. J'ai pour actualiser manuellement tous, ce qui est ennuyeux.
Je fais quelque chose de mal? Est-il la bonne façon de le faire, de sorte que la montre expressions sont actualisées automatiquement? Ou est-il un moyen d'actualiser l'ensemble de la fenêtre watch?
Grâce.
OriginalL'auteur mark | 2012-08-10
Vous devez vous connecter pour publier un commentaire.
Pour modifier la valeur d'une variable lors de l'exécution dans IntelliJ:
Je suis d'incompatibilité de type pour une Option<String> index de type
Vous avez probablement il n'y a pas un "int", mais un java.lang.Long, essayez de:
code
nouveau long(42)code
OriginalL'auteur Hari Rao
Il n'est pas possible de les actualiser automatiquement comme une actualisation aurait besoin d'appeler les méthodes réelles qui peuvent avoir des effets secondaires sur le débogueur et de la sémantique de l'application. Simple montre les valeurs sont actualisées automatiquement.
Voir aussi la demande YouTrack.
OriginalL'auteur CrazyCoder