Parfois, chaque fois que je redémarre l'application, qui est construite sur Java Struts Mysql et Jboss 4.05 Version J'obtiens l'erreur en tant que Adresse déjà utilisée: JVM_Bind
La seule solution que je connaisse est de redémarrer la machine et d’essayer à nouveau, cela fonctionnera . Sinon, je fais parfois Ctrl-Alt-Suppr et arrête tout le processus lié à Java, parfois cela fonctionne aussi.
Mais quelle est la raison exacte et comment pouvons-nous prévenir ce problème?
Adresse déjà utilisée: JVM_Bind
signifie qu'une autre application écoute déjà sur le port que votre application actuelle tente de lier.
ce que vous devez faire, c'est changer le port de votre application actuelle ou une version améliorée. il suffit de trouver l'application en cours d'exécution et de la tuer.
sur Linux, vous pouvez trouver le pid de l'application en utilisant,
netstat -tulpn
Sous Windows, ce scénario se produit lorsque Eclipse se bloque sans arrêt propre. Le serveur local Jetty ou Tomcat continue de fonctionner . Lorsque vous rouvrez Eclipse et essayez de redémarrer le serveur, l'adresse "déjà utilisée: JVM_Bind"
Vous pouvez résoudre ce problème en ouvrant le Gestionnaire des tâches, recherchez le processus javaw.exe et en le terminant.
Ensuite, vous pouvez redémarrer le serveur sur Eclipse.
Je rencontre généralement ce problème lorsque le port du serveur (j'utilise JBoss) est déjà utilisé
Les suspects habituels
Pour changer le port auquel JBoss 4.2.x se lie, allez à:
"C:\jboss4.2.2\server\default\deploy\jboss-web.deployer\server.xml"
ici par défaut est l'instance du serveur changez le port ici:
<Port du connecteur = "8080" address = "$ {jboss.bind.address}">
Dans l'exemple ci-dessus, le port est lié à 8080
Ouvrez la ligne de commande et tapez: netstat -a -o -n
ou tasklist
pour afficher les processus en cours d'exécution . Recherchez le port associé à Java et entrez: taskkill /F /PID <your PID number>
. Cliquez sur Entrée.
Est-il possible que MySql écoute sur le même port que JBoss?
Le message d'erreur indique-t-il un numéro de port - quelque chose comme Address already in use: JVM_Bind:8080
Vous pouvez modifier le port dans JBoss server.xml pour le tester.
Cela peut également être dû à la double définition du port 8080 dans ..\Tomcat\conf\server.xml:
<Connector port="8080"
enableLookups="false" redirectPort="8443" debug="0"/>
<Connector port="8080"
enableLookups="false" address="127.0.0.1" maxParameterCount="30000"/>
Cette erreur signifie que vous essayez de créer une nouvelle ServerSocket
sur un port déjà utilisé par une autre ServerSocket
. Essayez donc de faire en sorte que votre application ferme toutes les sockets et les connexions que vous connaissez et assurez-vous que votre application est complètement terminée. Vérifiez également s’il existe un autre processus lancé par votre programme.
La solution rapide pour éviter cela est que vous devez probablement arrêter JBoss avant de le redémarrer.
Vous devriez pouvoir appeler le bouton "Terminer" de la vue Console pour arrêter le serveur.
veuillez essayer les options suivantes pour l'exception de liaison JVM:
Vous pouvez essayer de supprimer les informations d'identification de Team Server, celles-ci incluant probablement un type de port dans la colonne du serveur . Comme https://wathever.visualstudio.com: 443
Accédez à Windows/Préférences Développez Équipe puis Team Foundation Server Accédez à Informations d'identification et supprimez ce qui se trouve là-bas.
J'ai eu le même sur Windows. Ma solution a été d'obtenir le port auquel le débogage veut se connecter. (Dans IntelliJ, un rectangle rouge donnant déjà l'info: "Erreur lors de l'exécution de Tomcat: impossible d'ouvrir le port du débogueur (127.0.0.1:XXXXX): ... Déjà utilisé ...") Disons que XXXXX est le numéro de port . Ensuite, j'ai cherché le problème et le PID dans une fenêtre de commande:
netstat -ano | find "CLOSE_WAIT" | find ":XXXXX"
J'ai reçu le numéro PID comme dernier numéro de la ligne de résultat. (Disons AAAA) Enfin:
TASKKILL /PID YYYY
Une information supplémentaire: Winscp s'est déconnecté pendant ce temps, probablement à cause de mon problème. :)
J'avais aussi ce problème. Pour moi, je ne pouvais pas démarrer/arrêter openfire (il était dit que c'était arrêté, mais tout fonctionnait toujours)
Sudo /etc/init.d/openfire stop
Sudo /etc/init.d/openfire start
De plus, le redémarrage d’Apache n’a pas aidé non plus.
Sudo /etc/init.d/Apache2 restart
Les erreurs étaient à l'intérieur:
/opt/openfire/logs/stderror.log
Error creating server listener on port 5269: Address already in use
Error creating server listener on port 5222: Address already in use
Pour remédier à cela, j'ai dû éteindre le serveur dans la zone d'administration de mon hôte.
Cela m'est arrivé récemment lors de l'activation de JMX sur deux services Tomcat exécutés dans Eclipse. J'ai mis par erreur le même port pour chaque serveur.
Donnez simplement à chaque télécommande jmx un port différent
Serveur 1
-Dcom.Sun.management.jmxremote.port=9000
Serveur 2
-Dcom.Sun.management.jmxremote.port=9001