J'ai ajouté un projet Java à Eclipse et je l'exécute à partir de la ligne de commande. Comme il était pré-construit, je ne l'ai pas construit. Le projet, OfBiz, est activé pour le débogage à distance. Dois-je compiler le projet dans Eclipse avant de pouvoir le déboguer à distance?Débogage à distance eclipse
2
A
Répondre
4
Non, vous n'avez pas besoin de recompiler, mais vous devez démarrer votre application avec des options telles que:
-Xdebug -Xrunjdwp:transport= dt_socket,address=1044,server=y,suspend=n
Le port peut être changé ici 1044 bien sûr. Si votre application est en cours d'exécution, ouvrez la boîte de dialogue de débogage et attachez le débogueur Eclipse à la JVM de l'application en utilisant "Application Java distante"/Nouveau
EDIT: J'ai oublié de mentionner que cela nécessite que l'application précompilée démarre de manière externe. Si vous ne voulez pas le démarrer depuis eclipse, vous devrez recompiler sinon eclipse ne trouvera pas la classe 'Main' à exécuter.
Si le code a été compilé avec l'optimisation 'on' et les numéros de ligne 'off', le passage du code peut sembler étrange, si vous attachez la source. Eclipse compte les lignes, y compris les commentaires, etc., tandis que le débogueur signale les numéros de ligne tels qu'ils sont après l'optimisation. – phisch
Bonne objection, si oui, alors il devrait recompiler. Je me demande pourquoi cela ne s'est pas produit si je suis entré dans les bibliothèques d'exécution, n'est-ce pas optimisé? – stacker
Les informations de débogage sont séparées des numéros de ligne. Ces bibliothèques sont optimisées, mais les numéros de ligne sont laissés à cette fin. –