J'ai essayé d'exécuter avec JRebel cette configuration:
Voici ma sortie:
c:\JBOSS\jboss-portal-2.7.2\bin\run.bat -c default
c:\JBOSS\jboss-portal-2.7.2\bin>set Java_OPTS=-Dhttp.proxyHost=188.173.32.78 -Dhttp.proxyPort=3128 -DproxySet=true
===============================================================================
JBoss Bootstrap Environment
JBOSS_HOME: c:\JBOSS\jboss-portal-2.7.2
Java: C:\Program Files\Java\jdk1.6.0_25\bin\Java
Java_OPTS: -Xdebug -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n -Dhttp.proxyHost=188.173.32.78 -Dhttp.proxyPort=3128 -DproxySet=true -Dprogram.name=run.bat -server -Xms256m -Xmx512m -XX:MaxPermSize=256m -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000
CLASSPATH: C:\Program Files\Java\jdk1.6.0_25\lib\tools.jar;c:\JBOSS\jboss-portal-2.7.2\bin\run.jar
===============================================================================
[2012-07-16 12:32:53,968] Artifact app-ear:ear: Artifact is being deployed, please wait...
[2012-07-16 12:32:53,972] Artifact my-portlet:war: Artifact is being deployed, please wait...
Connected to server
[2012-07-16 12:32:54,007] Artifact app-ear:ear: Artifact is deployed successfully
FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
ERROR: transport error 202: bind failed: Address already in use
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:690]
Disconnected from server
Notez le paramètre de démarrage suivant dans votre message.
-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n
Il doit y avoir un autre processus occupé par le port 8787.
Le 8787 port est déjà utilisé . Si le port 8787 est utilisé par une autre application, vous devez sélectionner un numéro de port différent dans le fichier run.bat Par exemple, 18787
ERREUR: erreur de transport 202: échec de la liaison: adresse déjà utilisée ERREUR: initialisation du transport JDWP, dt_socket, TRANSPORT_INIT (510)
trouver le pid
netstat -ap | grep 8787
tuer lePidFinded
si vous obtenez toujours le pid par "netstat -ap | grep 8787" il y a des enfants pids de theFindedPid 2 . pstree -p et pstree -p | grep theFindedPid pour rechercher s’il existe des enfants pids de theFindedPid
trouver le groupPid du pid ps x -o "% r% p% y% x% c"
kill -TERM -groupPid
Généralement, cette erreur se produit lorsque le port est déjà utilisé. D'après mon expérience, cela se produit généralement lorsque le serveur n'a pas démarré correctement, ce qui fait que le serveur est toujours en cours d'exécution dans le processus. Si vous utilisez Windows, vous pouvez consulter votre gestionnaire de tâches (Ctrl + Maj + Échap), puis rechercher le processus "Java.exe". Terminez-le et essayez de redémarrer votre serveur.
Ce problème se produit chaque fois que le port requis pour exécuter votre serveur est déjà utilisé par une autre application. Depuis que le numéro de port 8080 que j’avais utilisé pour mon serveur de jetée était déjà utilisé, il m’a donné cette erreur. Je viens de changer le port de 8080 à 7070 et cela a fonctionné pour moi. .
Vérifiez le port de débogage dans votre
standalone.sh
Ça à du être
DEBUG_MODE=true
DEBUG_PORT="8787"
Changez le mode debug en false ou passez un nouveau port de débogage à partir du nouveau fichier sh qui appelle ce --debug 8788
autonome