2014-05-07 16 views
8

Je suis un débutant en Java EE 7.Impossible de démarrer GlassFish 4.0 (Windows) - Port 1527 - Adresse déjà utilisée

Je Netbeans 7.4 avec GlassFish 4.0 et Java EE 7. Dans un 64 bits Windows 8.1 Pro machine. Je veux démarrer le serveur GlassFish 4.0, j'ai donc cliqué sur l'onglet services dans Netbeans puis dans l'option Serveurs, j'ai cliqué avec le bouton droit sur GlassFish Server 4.0, puis j'ai cliqué sur Démarrer. Lorsque j'ai fait cela, j'ai reçu le message suivant: "Impossible de démarrer GlassFish Server 4.0: le port d'écoute HTTP ou HTTPS est occupé lorsque le serveur n'est pas en cours d'exécution". J'ai aussi le serveur IIS, mais je l'ai arrêté. Après avoir arrêté IIS j'ai essayé de relancer le GlassFish mais il m'a montré le même message.

Aussi il y a une fenêtre dans Netbeans appelée sortie - Java DB processus de base de données et il m'a montré ce qui suit:

Tue May 06 22:03:11 GMT-05:00 2014 : Security manager installed using the Basic server security policy. 
Tue May 06 22:03:11 GMT-05:00 2014 Thread[main,5,main] java.io.FileNotFoundException: D:\Users\Juan Jose\.netbeans-derby\derby.log (Access is denied) 
Tue May 06 22:03:12 GMT-05:00 2014 : Could not listen on port 1527 on host localhost: 
java.net.BindException: Address already in use: JVM_Bind 
Tue May 06 22:03:12 GMT-05:00 2014 : Could not listen on port 1527 on host localhost: 
java.net.BindException: Address already in use: JVM_Bind 

J'ai couru un netstat dans Windows pour voir ce qui se passait avec le 1527 port et ce port est en mode d'écoute. Alors comment puis-je savoir quelle application ou quel processus occupe le port 1527?

Merci pour votre aide !!

Répondre

13

Pour trouver le processus qui maintient le port occupé, essayez la commande suivante:

netstat -ano | find "1527" 

Cela montrera une ligne avec le port et l'identifiant du processus. par exemple .:

TCP 127.0.0.1:1527   0.0.0.0:0    LISTENING  2268 

Une fois que vous avez l'ID de processus (par exemple 2268), exécutez la commande suivante pour libérer le port (cela va tuer le processus):

taskkill /F /PID 2268 

Maintenant, essayez de démarrer Glassfish.


Sur Linux:

lsof -Pnl +M -i6 | grep 1527 

Produit:

java 31139  1001 32u IPv6 114916062  0t0 TCP 127.0.0.1:1527 (LISTEN) 

Tué avec:

kill -9 31139 

Si vous voulez connaître le programme associé, voir How do I find out what service is using a certain port?

3

Ce n'est pas une erreur dont vous avez besoin. Lorsque vous démarrez GlassFish, NetBeans démarre également la base de données JavaDB (aka, Derby), qui écoute par défaut le port 1527. Lorsque vous fermez NetBeans, il ferme GlassFish mais ne ferme pas JavaDB. Par conséquent, lorsque vous démarrez NetBeans une deuxième fois, NetBeans tentera de redémarrer JavaDB et échouera car il est déjà en cours d'exécution sur le port 1527.

Pour arrêter la base de données, vous pouvez utiliser les services NetBeans (onglet) - > Bases de données-> JavaDB (clic droit-> Arrêter le serveur.Pour fermer à partir de la ligne de commande, utilisez $ NETBEANS_HOME/glassfish-4.0/javadb/bin/stopNetworkServer, où $ NETBEANS_HOME est le répertoire racine où NetBeans est installé (au moins sur Mac/Linux/Unix).

4

Si cette procédure ne fonctionne pas pour tous ceux pls suivez les étapes ci-dessous .. QU'ELLE travailler ..

  1. Aller à C: \ Program Files \ GlassFish-4.1 \ glassfish \ domaines \ domain1 \ config

  2. Open "domain.xml" dans un éditeur XML ou u peut utiliser notepad ++

  3. Recherche "8080" (ci-dessous pour en surbrillance ur référence)

    port de réseau auditeur = » "protocol =" http-listener-1" transport = "tcp" name = "http-listener-1" fil-pool = "http-thread-pool" enter image description here

  4. Remplacer "8080" avec un port ouvert. Si vous ne savez pas comment trouver le port essayer d'utiliser le port ouvert non « 3702 » puis enregistrez votre fichier

  5. maintenant exécuter votre projet

Après l'exécution du projet s'il vous plaît avoir un oeil sur la URL

http://localhost:8080/ ...... devrait être http://localhost:3702/ .....

Pour les ports ouverts suivent le dessous étapes

  1. cmd.exe ouvert

  2. execute cmd "ano netstat"

Choisissez une que vous trouvez est libre (comme dans la boîte verte ci-dessus) enter image description here

Questions connexes