points de rupture des données en java / eclipse
lors du développement de C++ avec VS vous avez Cette caractéristique étonnante des points de rupture de données, qui se déclenchent lorsque les données à une certaine adresse dans la mémoire change.
existe-t-il une fonctionnalité similaire lors du développement de java dans eclipse?
merci!
edit: A propos de la fonctionnalité" suspend when value changes": j'ai l'impression que l'exécution doit toujours atteindre la ligne où se trouve le point de rupture. le truc, c'est que je veux qu'il déclencher n'importe où, dès que la valeur changement.
6 réponses
vous pouvez définir un watchpoint sur un champ: placez le curseur sur la ligne où le champ est déclaré et sélectionnez le menu Run -> Toggle Watchpoint
ou mettez juste un point de rupture en double-cliquant sur la marge gauche sur cette ligne.
vous pouvez changer les propriétés du watchpoint comme suspend on field access
ou suspend on field modification
après l'ajout. Il suffit de cliquer droit sur le point d'observation à la marge de gauche et sélectionnez Breakpoint Properties...
rechercher l'aide pour watchpoint pour obtenir plus d'informations:
un watchpoint est un point de rupture spécial qui arrête l'exécution d'une application chaque fois que la valeur d'une expression donnée change, sans préciser où elle pourrait se produire. ...
utilisant la Variable view:
- faites un clic droit sur le champ et sélectionnez "bascule Watchpoint", puis
- faites un clic droit sur la même instance et sélectionnez " points de rupture D'Instance..."ce qui permet de restreindre un point de rupture spécifique à une instance donnée.
notez que la performance n'est probablement pas aussi bonne qu'avec un point de rupture de la mémoire matérielle (comme dans VC++ par exemple).
sous les propriétés breakpoint, vous avez l'option de le rendre conditionnel et de vérifier le bouton radio "Suspend when value changes".
faites un clic droit sur le point de rupture et sélectionnez Breakpoint properties
.
Dans l'écran d'ouverture, cliquez sur: Conditional -> Suspend when value changes
la chose la plus proche serait d'éditer les propriétés breakpoint. Vous pouvez ajouter des conditions pour vérifier les valeurs distinctes. Une autre façon pourrait être d'ajouter un point de rupture à la méthode setter.
vous pouvez définir les propriétés du point de rupture en cliquant avec le bouton droit de la souris sur un point de rupture déjà défini dans la vue du point de rupture.
autant que je sache, il n'y a pas de telle caractéristique générique dans Eclipse. Cependant, vous pouvez donner quelques conditions à un point de rupture existant:
Ajouter un point de rupture quelque part dans votre code. Ensuite, dans la vue" Breakpoint", faites un clic droit dessus, puis choisissez"Breakpoint properties". Dans le panneau, vous pouvez ajouter une condition qui doit être vérifiée pour que l'application s'arrête sur ce point d'arrêt (par exemple,if (foo > 0)
).
ce n'est pas exactement ce que vous voulez, mais je ne pense pas éclipse fournit cette fonctionnalité.