Adresse wird bereits verwendet JVM_Bind-Fehler in Java

Sheeraz Gul 20 Juni 2023
Adresse wird bereits verwendet JVM_Bind-Fehler in Java

Dieses Tutorial demonstriert den Java-Fehler Adresse bereits in Verwendung jvm_bind.

der Fehler Adresse bereits verwendet: JVM_Bind in Java

Die Adresse bereits verwendet: JVM_Bind tritt meistens auf, wenn wir an Webanwendungen arbeiten. Dieser Fehler tritt häufig auf, wenn Dienste wie Tomcat, Struts, JBoss usw. verwendet werden.

Der Fehler tritt auf, wenn wir versuchen, eine Verbindung mit einem Port herzustellen, auf dem bereits eine andere Anwendung lauscht. Um dieses Problem zu lösen, müssen wir entweder den Port für die aktuelle Anwendung ändern oder die andere Anwendung beenden, die auf demselben Port ausgeführt wird.

Hier ist die Lösung für beide Szenarien.

Ändern Sie den Webserver so, dass er auf einem anderen Port ausgeführt wird

Das Ändern des Webserverports ist in den meisten Szenarien eine einfache Aufgabe. Wenn Sie beispielsweise Tomcat verwenden, gehen Sie wie folgt vor, um den Webserver-Port zu ändern.

  1. Suchen Sie die Datei server.xml, normalerweise im Verzeichnis C:/apache-tomcat-7.0.11/conf/server.xml.

  2. Die Datei server.xml ist ein Code-Snippet, wie unten gezeigt.

    <Connector port="8080" protocol="HTTP/1.1"
    			   connectionTimeout="20000"
    			   redirectPort="8443" />
    
  1. Ändern Sie nun die Connector-Portnummer in eine beliebige andere Portnummer und speichern Sie sie.
  2. Jetzt läuft der Webserver auf der von Ihnen angegebenen Portnummer. Der Fehler Adresse bereits verwendet: JVM_Bind ist behoben.

Beenden Sie den vorherigen Dienst

Wir können auch die vorherige Anwendung beenden, die auf dem Port ausgeführt wird, um unsere Anwendung auf diesem Port auszuführen. Dazu müssen wir den Prozess finden, in dem der Dienst ausgeführt wird, und diesen Dienst dann beenden.

Hier ist der Prozess, um die Dienste auf Windows- und Linux-Plattformen zu finden und zu beenden.

Für Windows:

  1. Suchen Sie zunächst den Prozess anhand Ihrer Portnummer. Verwenden Sie den folgenden Befehl.

    netstat -ano | find "8080"
    
  2. Der obige Befehl findet den Prozess, der auf dem Port 8080 läuft. Nun ist der gefundene Prozess beispielsweise 1234.

  3. Beenden Sie den Prozess 1234 mit dem folgenden Befehl.

    taskkill /F /PID 1234
    
  1. Der Befehl taskkill beendet den Prozess mit der Prozess-ID 1234.
  2. Jetzt können wir unsere Anwendung auf dem Port 8080 ohne den Fehler Adresse bereits verwendet: JVM_Bind ausführen.

Für Linux:

  1. In ähnlicher Weise wird der Befehl netstat auch unter Linux verwendet, um einen Dienst oder Prozess zu finden.

  2. Der netstat wird verwendet, um den Status des Netzwerks anzuzeigen, und der Befehl grep wird verwendet, um den Prozess zu finden, der auf einem Port läuft. Siehe den Befehl unten.

    netstat -an | grep "8080"
    
  3. Der obige Befehl findet den Prozess, der auf dem Port 8080 läuft. Nun ist der gefundene Prozess beispielsweise 1234.

  4. Verwenden Sie den Befehl kill, um den Prozess 1234 zu beenden.

    kill - 1234
    
  5. Der Fehler Adresse wird bereits verwendet: JVM_Bind wird behoben, nachdem diese Befehle unter Linux ausgeführt wurden.

Sheeraz Gul avatar Sheeraz Gul avatar

Sheeraz is a Doctorate fellow in Computer Science at Northwestern Polytechnical University, Xian, China. He has 7 years of Software Development experience in AI, Web, Database, and Desktop technologies. He writes tutorials in Java, PHP, Python, GoLang, R, etc., to help beginners learn the field of Computer Science.

LinkedIn Facebook

Verwandter Artikel - Java Error