2013-01-11 3 views
8

Hallo, ich bin nicht in der Lage Tomcat 7 Server von Eclipse zu starten.kann Tomcat 7 Server nicht starten - java.net.BindException: Adresse wird bereits verwendet

Wenn ich Start von Eclipse gebe ich das folgende Fehlerprotokoll.

Jan 11, 2013 10:10:27 AM org.apache.catalina.core.AprLifecycleListener init 
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre7\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jre7/bin/client;C:/Program Files/Java/jre7/bin;C:/Program Files/Java/jre7/lib/i386;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Users\Jayant\Desktop\data\adt-bundle-windows-x86\eclipse;;. 
Jan 11, 2013 10:10:28 AM org.apache.coyote.AbstractProtocolHandler init 
INFO: Initializing ProtocolHandler ["http-bio-8080"] 
Jan 11, 2013 10:10:28 AM org.apache.coyote.AbstractProtocolHandler init 
INFO: Initializing ProtocolHandler ["ajp-bio-8009"] 
Jan 11, 2013 10:10:28 AM org.apache.catalina.startup.Catalina load 
INFO: Initialization processed in 1165 ms 
Jan 11, 2013 10:10:28 AM org.apache.catalina.core.StandardService startInternal 
INFO: Starting service Catalina 
Jan 11, 2013 10:10:28 AM org.apache.catalina.core.StandardEngine startInternal 
INFO: Starting Servlet Engine: Apache Tomcat/7.0.12 
Jan 11, 2013 10:10:28 AM org.apache.coyote.AbstractProtocolHandler start 
INFO: Starting ProtocolHandler ["http-bio-8080"] 
Jan 11, 2013 10:10:28 AM org.apache.coyote.AbstractProtocolHandler start 
INFO: Starting ProtocolHandler ["ajp-bio-8009"] 
Jan 11, 2013 10:10:28 AM org.apache.catalina.startup.Catalina start 
INFO: Server startup in 507 ms 
Jan 11, 2013 10:10:28 AM org.apache.catalina.core.StandardServer await 
SEVERE: StandardServer.await: create[localhost:8005]: 
java.net.BindException: Address already in use: JVM_Bind 
    at java.net.DualStackPlainSocketImpl.bind0(Native Method) 
    at java.net.DualStackPlainSocketImpl.socketBind(Unknown Source) 
    at java.net.AbstractPlainSocketImpl.bind(Unknown Source) 
    at java.net.PlainSocketImpl.bind(Unknown Source) 
    at java.net.ServerSocket.bind(Unknown Source) 
    at java.net.ServerSocket.<init>(Unknown Source) 
    at org.apache.catalina.core.StandardServer.await(StandardServer.java:422) 
    at org.apache.catalina.startup.Catalina.await(Catalina.java:707) 
    at org.apache.catalina.startup.Catalina.start(Catalina.java:653) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source) 
    at java.lang.reflect.Method.invoke(Unknown Source) 
    at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:303) 
    at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:431) 

Jan 11, 2013 10:10:28 AM org.apache.coyote.AbstractProtocolHandler pause 
INFO: Pausing ProtocolHandler ["http-bio-8080"] 
Jan 11, 2013 10:10:29 AM org.apache.coyote.AbstractProtocolHandler pause 
INFO: Pausing ProtocolHandler ["ajp-bio-8009"] 
Jan 11, 2013 10:10:30 AM org.apache.catalina.core.StandardService stopInternal 
INFO: Stopping service Catalina 
Jan 11, 2013 10:10:30 AM org.apache.coyote.AbstractProtocolHandler stop 
INFO: Stopping ProtocolHandler ["http-bio-8080"] 
Jan 11, 2013 10:10:30 AM org.apache.coyote.AbstractProtocolHandler stop 
INFO: Stopping ProtocolHandler ["ajp-bio-8009"] 

Jetzt bekomme ich den folgenden Fehler.

Jan 11, 2013 10:18:59 AM org.apache.catalina.core.AprLifecycleListener init 
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jre7\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:/Program Files/Java/jre7/bin/client;C:/Program Files/Java/jre7/bin;C:/Program Files/Java/jre7/lib/i386;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Users\Jayant\Desktop\data\adt-bundle-windows-x86\eclipse;;. 
Jan 11, 2013 10:19:00 AM org.apache.coyote.AbstractProtocolHandler init 
INFO: Initializing ProtocolHandler ["http-bio-8080"] 
Jan 11, 2013 10:19:00 AM org.apache.coyote.AbstractProtocolHandler init 
INFO: Initializing ProtocolHandler ["ajp-bio-8009"] 
Jan 11, 2013 10:19:00 AM org.apache.catalina.startup.Catalina load 
INFO: Initialization processed in 872 ms 
Jan 11, 2013 10:19:00 AM org.apache.catalina.core.StandardService startInternal 
INFO: Starting service Catalina 
Jan 11, 2013 10:19:00 AM org.apache.catalina.core.StandardEngine startInternal 
INFO: Starting Servlet Engine: Apache Tomcat/7.0.12 
Jan 11, 2013 10:19:00 AM org.apache.coyote.AbstractProtocolHandler start 
INFO: Starting ProtocolHandler ["http-bio-8080"] 
Jan 11, 2013 10:19:00 AM org.apache.coyote.AbstractProtocolHandler start 
INFO: Starting ProtocolHandler ["ajp-bio-8009"] 
Jan 11, 2013 10:19:00 AM org.apache.catalina.startup.Catalina start 
INFO: Server startup in 535 ms 
Jan 11, 2013 10:20:13 AM org.apache.catalina.core.StandardServer await 
WARNING: StandardServer.await: Invalid command 'GET/HTTP/1.1' received 
Jan 11, 2013 10:20:19 AM org.apache.catalina.core.StandardServer await 
WARNING: StandardServer.await: Invalid command '' received 

Antwort

8

Der Admin-Port dient zum Empfang von Admin-Befehlen und der HTTP-Port zum Empfang von HTTP-Requests. Sie müssen verschiedene Ports verwenden. Was passiert ist: Der HTTP Connector konnte nicht gestartet werden, da der Server diesen Port bereits geöffnet hat. Ihr Browser/Client/was auch immer die Anfrage an den Admin-Port gesendet hat, der Server versteht HTTP nicht und protokolliert diesen Fehler.

Versuchen Sie Tomcat erneut an einem anderen Port zu installieren.

+0

jetzt bekomme ich den folgenden Fehler @Neurenor. Sehen Sie den bearbeiteten Code – user1844638

+0

versuchen Sie localhost: 8080 in Ihrem Browser. –

+0

Ich habe versucht, es ist nicht zugänglich geben HTTP 404 Fehler. – user1844638

3

Ich hatte dieses Problem (Port 8005 wird bereits verwendet) und die Ursache war aufgrund eines vorhandenen Tomcat-Prozesses bereits auf meinem Computer ausgeführt. Also, was ich tun musste, war im Grunde den bestehenden Prozess zu töten und Tomcat wieder zu starten.

0

Was Sie tun können, ist eher dann töten Prozess können Sie tomcat Verzeichnis/conf/server.xml, Hier können Sie Shutdown-Port (8005) zu einem anderen Port ändern. Ändern Sie auch den Standard-Port (8080) und den anderen Wert in "Anderer". Sie können also mehrere Instanzen Ihres Tomcat auf einem einzelnen Computer ausführen. Starten Sie Ihren Server neu (wenn das Problem weiterhin besteht) Erstellen Sie es in Eclipse neu.

1

Der allgemeine Fehler besteht darin, denselben Shutdown- und Connector-Port in Ihrer server.xml Konfigurationsdatei zu verwenden.

Diese Ports sollten unterschiedlich sein und hier ist das richtige Beispiel:

<Server port="8005" shutdown="SHUTDOWN"> 
    <Connector port="8983" protocol="HTTP/1.1" 

standardmäßig Tomcat lauscht auf Port 8005 für SHUTDOWN Befehl und es sollte auf Connector-Port immer unterschiedlich sein.

Wenn Ihr Port noch immer verwendet wird, versuchen Sie sudo lsof -i:8005, um herauszufinden, warum.

Verwandte Themen