ne peut pas exécuter GlassFish car quelque chose utilise le port 8080; mais comment le trouver?

0

Je développe sur Mac (Lion) avec Eclipse et GlassFish 3.1. GlassFish utilise les ports 8080 et 4848. Soudainement, lorsque j'essaie de lancer GlassFish, il me dit que cela est impossible, car il y a un conflit de ports.

Autant que je sache, rien n'utilise ce port. J'ai tout arrêté, j'ai redémarré le Mac et j'obtiens toujours la même erreur lorsque j'ai exécuté GlassFish. J'ai désinstallé GlassFish, supprimé tous les répertoires, redémarré ma machine, réinstallé GlassFish et le même problème.

J'ai créé un nouvel utilisateur test sur mon Mac, je me déconnecte comme moi, connectez-vous comme lui, installez GlassFish sous le compte de cet utilisateur et tout fonctionne correctement.

C'est comme si quelque chose dans mon compte d'utilisateur faisait que mon Mac ou GlassFish pense que le port est utilisé.

Est-ce que quelqu'un sait comment je pourrais résoudre ce problème? Je déteste l'idée de devoir créer un nouveau compte sur mon Mac et de transférer toutes mes données là-bas. Cela semble être une solution excessive.

Robert Hume
la source
Si nmap ne donne rien, essayez de passer par Telnet sur le port
Mark,

Réponses:

1

Le NMAP fournira une liste des ports ouverts et des programmes qui les utilisent actuellement. Il s’agit en fait d’un puissant outil de réseau pouvant effectuer une grande variété de tâches de maintenance du réseau.

Vous pouvez en savoir plus à ce sujet ici: http://nmap.org/book/inst-macosx.html

C'est un petit utilitaire en ligne de commande (bien que des interfaces graphiques soient disponibles) qui est assez facile à utiliser et devrait vous donner une vue détaillée de l'état actuel de votre réseau.


la source
Salut cksum. Merci pour l'aide. J'ai fait quelques lsof et moins / etc / services et, autant que je sache, rien n’exécute ce port. Je ne sais pas pourquoi GlassFish commande à distance un conflit de ports.
Robert Hume
2
Je vous suggère de lancer nmap. Il ne cherchera pas les services en cours d'exécution, mais examinera les ports eux-mêmes et fournira des informations sur ce qui les utilise. LSOF n'est pas vraiment le meilleur utilitaire pour ce travail. Vous pouvez également lancer l'utilitaire de réseau (dans le dossier Utilitaires) et exécuter Nestat. Cela devrait vous donner une meilleure vue de l'état de votre réseau.
0

Vous pouvez utiliser lsof -i TCP:8080. Je pense que le seul problème est qu’il découvrira que Java utilise ce port; Si vous supprimez ce processus Java, vous ne pourrez toujours pas lancer Glassfish.

Ma solution consiste à supprimer tous les domaines du répertoire glassfish, puis à supprimer le serveur Glassfish et à en installer un nouveau avec un nouveau domaine.

Pour moi, c'est un problème de domaine.

Jonas
la source
"Le seul problème que je pense, c'est qu'il va découvrir que Java utilise ce port. Et si vous supprimez ce processus Java, vous ne pourrez toujours pas démarrer Glassfish." ... pourquoi serait-ce le cas?
Peter Štibraný
0

netstat-nap fonctionnerait également. Si le processus n'est pas le vôtre, vous devrez utiliser sudo. Il listera tous les ports ouverts, avec leur statut et le PID du processus propriétaire.

Quelque chose comme:

sudo netstat -nap | grep 8080
Alex
la source