2010-06-24 3 views
7

Ich habe gerade angefangen, etwas über Server zu lernen, und ich arbeite mit der Google App Engine herum. Ich versuche, durch App Engine Tutorial here auf Mac mit Eclipse befindet sich zu bekommen, aber ich bin immer ein Problem, das lautet:Google App Engine: WARNUNG: fehlgeschlagen Server @ 3d484a8a: java.net.BindException: Adresse bereits verwendet

Jun 24, 2010 4:35:08 PM com.google.apphosting.utils.jetty.JettyLogger info 
INFO: Logging to JettyLogger(null) via com.google.apphosting.utils.jetty.JettyLogger 
Jun 24, 2010 4:35:08 PM com.google.apphosting.utils.config.AppEngineWebXmlReader readAppEngineWebXml 
INFO: Successfully processed /Users/ayanonagon/Desktop/Venmo/iPhoneApplication/Guestbook/war/WEB-INF/appengine-web.xml 
Jun 24, 2010 4:35:08 PM com.google.apphosting.utils.config.AbstractConfigXmlReader readConfigXml 
INFO: Successfully processed /Users/ayanonagon/Desktop/Venmo/iPhoneApplication/Guestbook/war/WEB-INF/web.xml 
Jun 24, 2010 4:35:08 PM com.google.apphosting.utils.jetty.JettyLogger warn 
WARNING: failed [email protected]:8888: java.net.BindException: Address already in use 
Jun 24, 2010 4:35:08 PM com.google.apphosting.utils.jetty.JettyLogger warn 
WARNING: failed [email protected]: java.net.BindException: Address already in use 

************************************************ 
Could not open the requested socket: Address already in use 
Try overriding --address and/or --port. 

Ich habe versucht, das Problem der Suche, und nein, das rote Quadrat in der Konsolenansicht ist nicht rot. Es könnte irgendwie ein Mac-Problem sein, da mein Freund, der auch das Tutorial durchläuft, keine Probleme bekommt. Vielleicht etwas mit localhost zu tun: 8888?

Antwort

6

Das bedeutet, dass entweder eine andere Instanz auf dem Port ausgeführt wird oder ein anderes Programm auf dem Port wartet. Was hast du noch an Port 8888?

Wenn Sie anpassen möchten, wie der Server gestartet wird, können Sie in Eclipse eine neue Run/Debug Konfiguration des Typs Web Application erstellen oder die vorhandene ändern, die Sie haben.

+0

Es scheint so zu sein, dass ich etwas namens guestbook2 habe, von dem ich dachte, dass ich es loswerde, aber nicht finden kann. –

+0

@ayanonagon Töte es und versuche GAE erneut. Oder ändern Sie den Port für GAE, wie ich –

+0

angezeigt habe Ich habe gerade "Gästebuch" auf meinem Computer gesucht und wurde alles los, was stören könnte. Es scheint jetzt zu funktionieren. Vielen Dank!!! –

2

Sie höchstwahrscheinlich eine vorherige Instanz ausgeführt haben (überprüfen Sie die Konsole Auswahltaste oder Datei einfach -> Restart)

Der Fehler bedeutet, dass der Webserver nicht auf dem Port (wie 8080 oder 80) binden konnte es wurde gesagt, weil sich schon ein anderes Programm daran gebunden hat.

+0

Es ist möglich, dass ein Programm, das ich in den Papierkorb verschoben habe, noch daran gebunden sein könnte?Und wenn ja, gibt es eine Möglichkeit, sie zu lösen? –

+0

höchstwahrscheinlich nicht - Ich glaube nicht, dass Windows erlaubt, laufende Programme in den Papierkorb zu werfen. Versuchen Sie, Eclipse neu zu starten. –

2

Sie haben eine vorherige Instanz ausgeführt. Starten Sie Eclipse neu und beenden Sie jedes Mal, wenn Sie eine Anwendung ausführen, die Anwendung, bevor Sie sie erneut ausführen oder eine andere Anwendung. Ich hoffe, es wird Ihnen helfen

7

In meinem Fall habe ich die App gestartet, testen, Änderungen an den Dateien vornehmen, dann versuchen, es erneut zu starten oder zu testen. Ich habe diese Lösung gefunden.

Sehen http://code.google.com/appengine/docs/java/tools/eclipse.html#Running_the_Project

, die unter anderem wunderbaren Informationen darüber, wann Sie es neu starten müssen, und wenn Sie dies nicht tun, sagen: „Um den Server zu stoppen, stellen Sie sicher, dass der Debug-Panel ausgewählt ist, klicken Sie dann auf die Schaltfläche "Beenden": Die Eclipse-Schaltfläche "Beenden". "

die Debug-Panel zu öffnen: Klicken Sie auf Fenster -> Ansicht anzeigen -> Andere die Debug-Liste erweitern dann Debug klicken

Das Panel Debug nun angezeigt und die Terminate-Taste das rote Quadrat an der Spitze rechts vom Debug-Panel.

Nach dem Beenden des bestehenden Servers müssen Sie das Ausführen natürlich erneut ausführen.

1

Die Buchse wird noch verwendet. Verwenden Sie die folgende Befehlszeile:

sudo kill -9 $(lsof -i TCP:8888 | grep java | grep LISTEN | awk '{ print $2 }') 
0

Wenn Sie Maven verwenden, um Ihr Projekt zu erstellen, können Sie auch Ihre pom.xml Datei bearbeiten und die <port>8080</port> zu einem nicht verwendeten Wert ändern.

Verwandte Themen