2014-05-07 4 views
8

Ich bin ein Neuling in Java EE 7.konnte nicht Glassfish 4.0 (Windows) starten - Port 1527 - Adresse bereits in Gebrauch

Ich habe Netbeans 7.4 mit Glassfish 4.0 und Java EE 7. In einem 64-Bit Windows 8.1 Pro Maschine. Ich möchte den GlassFish 4.0 Server starten, also klickte ich auf den Tab Dienste in Netbeans und dann in der Option Server habe ich mit der rechten Maustaste auf GlassFish Server 4.0 geklickt und dann auf Start geklickt.

Als ich das tat, bekam ich die folgende Meldung: "GlassFish Server 4.0 konnte nicht gestartet werden: HTTP oder HTTPS Listener Port ist besetzt, während der Server nicht läuft". Ich habe auch den IIS-Server, aber ich habe es gestoppt. Nach dem Stoppen von IIS versuchte ich erneut den GlassFish zu starten, aber es zeigte mir die gleiche Nachricht.

auch ein Fenster in Netbeans es heißt Output - Java DB-Datenbank-Prozess und es zeigte mir folgende:

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 

ich ein netstat -a in Windows lief, um zu sehen, was mit den 1527 geschah Port und dieser Port befindet sich im LISTENING-Modus.

Wie kann ich also wissen, welche Anwendung oder welcher Prozess den 1527-Port belegt?

Danke für Ihre Hilfe !!

Antwort

13

Um den Prozess zu finden, die den geschäftigen Hafen hält, versuchen Sie den folgenden Befehl ein:

netstat -ano | find "1527" 

Diese eine Zeile mit dem Hafen und die Kennung des Prozesses zeigen. z.B .:

TCP 127.0.0.1:1527   0.0.0.0:0    LISTENING  2268 

Sobald Sie die Prozess-ID (z 2268) haben, führen Sie den folgenden Befehl für die Freigabe des Port (dies wird den Prozess töten):

taskkill /F /PID 2268 

Nun versuchen Glassfish zu starten.


Unter Linux:

lsof -Pnl +M -i6 | grep 1527 

Produziert:

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

getötet mit:

kill -9 31139 

Wenn Sie das zugehörige Programm wissen möchten, finden Sie unter How do I find out what service is using a certain port?

3

Dies ist kein Fehler, über den Sie sich Gedanken machen müssen. Wenn Sie GlassFish starten, startet NetBeans auch die JavaDB (alias Derby) -Datenbank, die standardmäßig Port 1527 überwacht. Wenn Sie NetBeans herunterfahren, wird GlassFish heruntergefahren, aber JavaDB wird nicht heruntergefahren. Wenn NetBeans ein zweites Mal gestartet wird, versucht NetBeans, JavaDB erneut zu starten und schlägt fehl, da Port 1527 bereits ausgeführt wird und abgehört wird.

Zum Herunterfahren der Datenbank können Sie die NetBeans-Dienste (Tab) verwenden. > Datenbanken-> JavaDB (Rechtsklick-> Stop Server.Verwenden Sie $ NETBEANS_HOME/glassfish-4.0/javadb/bin/stopNetworkServer, wobei $ NETBEANS_HOME das Verzeichnis auf oberster Ebene ist, auf dem NetBeans installiert ist (zumindest unter Mac/Linux/Unix).

4

Wenn die oben nicht für jedermann funktioniert pls die folgenden Schritte folgen .. sicher, dass es funktionieren wird ..

  1. Zum C: \ Programme \ Glassfish-4.1 \ Glassfish \ domains \ domain1 \ config

  2. Open "domain.xml" in einem xML-Editor oder u kann Notepad ++ verwenden

  3. Suche "8080" (unten als ur Referenz hervorgehoben)

    Netzwerk-Listener-Port =“ "protocol =" http-Listener-1" transport = "tcp" name = "http-Listener-1" Thread-Pool = "http-thread-pool" enter image description here

  4. Ersetzen "8080" mit einem beliebigen offen Port. Wenn Sie nicht wissen, wie offen Port, um herauszufinden, versucht Port verwenden keine „3702“, dann die Dateien

  5. spart jetzt Ihr Projekt

Nach dem Ausführen des Projektes führen Sie ein Auge auf das haben URL

http://localhost:8080/ ......http://localhost:3702/ sein sollte .....

Um offene Ports zu erhalten folgen Sie den unten Schritte

  1. offen cmd.exe

  2. cmd "netstat ano"

Wählen Sie eine beliebige auszuführen, die Sie frei zu finden (wie in den grünen Kasten oben) enter image description here

Verwandte Themen