Comment puis-je obtenir Java “hot code de remplacement” de travail dans JBoss?
Je suis en cours d'exécution JBoss 4.0.3.SP1_CP04 et de vous y connecter avec Eclipse 3.4.1 du débogueur, à la fois à l'aide du JDK 1.6.0_11.
Quand je fais une modification mineure d'une méthode (par exemple, la modification d'un "+ 1" dans la logique d'un "+ 2") et de l'enregistrer, je reçois immédiatement un message d'erreur boîte de dialogue intitulée "Hot Code de Remplacer" Échoué avec l'erreur "Supprimer la méthode n'est pas mis en œuvre"
Quelqu'un peut-il suggérer des étapes à suivre pour que cela fonctionne?
OriginalL'auteur Brett | 2009-02-11
Vous devez vous connecter pour publier un commentaire.
Ce que vous voulez faire est de déployer de JBOSS as un explosé GUERRE. En règle générale, si un éditeur ne l'initiale de déployer lui-même, il sera alors gérer la copie des fichiers individuels sur.
Dans IntelliJ, c'est facile. Je n'ai jamais fait d'Eclipse, mais ce projet est votre meilleur pari.
OriginalL'auteur Chase Seibert
J'ai été en utilisant JRebel et c'est un épargnant de vie autant que de modifier le code et de mettre à jour dynamiquement le serveur d'application. Payé pour lui-même le premier jour. (nous sommes à 7 minutes de la compilation/déploiement/redémarrage du cycle)
OriginalL'auteur Javamann
OriginalL'auteur phantom4
La raison en est que l'assemblée peut être utilisé un autre compilateur que hot swap. Par exemple, si vous construisez un projet maven, nous avons utilisé javac. Lorsque vous essayez d'effectuer un échange à chaud etslipse utilise le compilateur intégré jdt compilateur(compilateur est de ne pas prendre de jdk installé, et ne peut pas être changé par des moyens réguliers.). Binaire classes obtenues sont différentes et la jvm ne peut pas les remplacer.
J'ai fait l'expérience que les classes normales fonctionnent généralement très bien, mais dès que intérieure/anonyme classes sont impliqués, les choses casser, je pense que jdt et javac utiliser différentes conventions de nommage pour les classes générées.
OriginalL'auteur Roman
Ce que vous avez décrit devrait fonctionner. Quels sont vos jvm arguments pour jboss pour activer le débogage?
Les miennes sont celles-ci:
-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8000,serveur=y,suspendre=n
OriginalL'auteur Ron
J'ai eu un problème où de chaudes code de remplacement lui-même n'a pas de travail. Nous avons fait quelques changements comme faire en sorte que la génération automatique" a été cochée et en décochant l'option "abandonner construire un chemin de génération d'erreur se produit". Mais dans mon cas, le HCR lui-même n'a pas de travail. Je n'étais pas de faire passer le message comme vous l'avez mentionné. Plus de détails dans ce lien.
https://sites.google.com/site/javaerrorsandsolutions/home/hot-code-replacement
OriginalL'auteur user513365