Dans ce contexte, la résolution de bug peut s'avérer très chronophage, voir impossible. Vous aurez alors besoin d'utiliser le debug à distance !
Pour cela, suivez les étapes ci-dessous :
- Lancer votre serveur en mode debug
- Lancer votre IDE en mode debug, en pointant sur l'application déployée
- Débugguer comme il vous plait !
Lancement du serveur en mode debug
Pour lancer votre serveur en mode debug, ajouter les paramètres suivant à la JVM
-Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n
Sous tomcat, vous pouvez ajouter la ligne suivante au fichier catalina.bat
set DEBUG_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,address=1044,server=y,suspend=n
Sous Weblogic, vous pouvez ajouter la ligne suivante au fichier startWSL.cmd
set DEBUG_OPTS = -Xdebug -Xrunjdwp:transport= dt_socket,address=1044,server=y,suspend=npuis ajouter la variable %DEBUG_OPTS% après "%JAVA_HOME%\bin\java" dans votre script de lancement.
Jetons un oeil aux paramètres de l'option -Xrunjdwp :
- transport=dt_socket : Définit le mode de connexion à la JVM, dans ce cas en utilisant un socket
- server=y : Si 'y', la JVM se met en écoute sur le port précisé par l'argument 'adress'. Si 'n', la JVM essayera de se connecter au débuggeur à l'adresse précisée par l'argument 'adress'
- suspend=n : Si 'y', le serveur se met en pause jusqu'à l'arrivée d'une connexion par un débuggeur (utile pour débugguer au démarrage, on peut aussi fixer un timeout pour attendre le débuggeur).
- address=1044 : Numéro du port TCP/IP en écoute/sur lequel se connecter
Lancement de l'IDE en mode debug
Sous Eclipse, allez dans Debug -> Debug Configurations -> Remote Java Application. Ajouter une remote application à l'aide d'un clic-droit -> new. Préciser le nom du projet à débugguer, ainsi que l'adresse et le port d'écoute de la JVM. Cliquez sur 'Debug'.
Vous pouvez désormais débugguer comme à votre habitude en local !
Aucun commentaire:
Enregistrer un commentaire
Un avis ? Une question ?
N'hésitez pas à laissez des commentaires !