Eclipse: JPDA Port (nachträglich) herausfinden

Ich habe einige Play-Anwendungen im Terminal laufen, plus einer weiteren in Eclipse. Die in Eclipse würde ich gerne debuggen, wozu play eclipsify einen entsprechenden Launcher “Connect JPDA to myapp.launch” anlegt. Der Launcher enthält einen Port “0”:

Nun ist der Port (ich glaube, “0” wählt den default 8000, aber das kann falsch sein) nicht erreichbar, vielleicht ist er durch die Anwendungen im Terminal belegt. Vielleicht wählt “0” auch jedes mal einen zufälligen Port, ich kann das gerade nicht gegenprüfen. Wie auch immer, der Punkt ist:

Beim Start der Anwendung gibt es eine Ausgabe im Log à la

Listening for transport dt_socket at address: <port number>

Läuft die Anwendung lange genug, sehe ich diese Ausgabe aber nicht mehr – wie finde ich nun den Port heraus? Unter OS X wie folgt: Zuerst suche ich in der Aktivitätsanzeige alle “java”-Prozesse:

Uns interessiert derjenige, der zu Eclipse gehört (diese Ansicht wird per Doppelklick auf den Prozessnamen geöffnet):

Die Liste der “geöffneten Dateien und Ports” ist recht lang, aber der Eintrag sticht durch seine Kürze hervor: Voilà, der gesuchte Port.

PS: Man kann den Logger von Play natürlich auch so konfigurieren, dass es die Ausgabe in ein File schreibt, siehe hier (via). Hier brauchte ich aber die Möglichkeit den Port herauszufinden, ohne die Applikation neu zu starten.

Slightly related: Den Prozess, der auf Port (z.B.) 80 hört, findet sich per

” -t” listet die Prozesse auf (Quelle), um sie an kill übergeben zu können:

sudo kann optional sein.

FDT 5: Debugger per Ant starten [UPDATE]

Bevor ich das zum einhundertundelfzigsten mal suchen muss:

Analog dazu: Der Profiler

UPDATE: Eine CoreException wie

org.eclipse.core.runtime.CoreException: could not build project

kann man mittels Project->clean beheben; ein

BUILD FAILED
/xxx/yyy/zzz/build/build.xml:123: java.lang.NullPointerException

liegt vermutlich an der Flex-Version. Ich habe das erfolgreich für einige Versionen unter 4.6 getestet, für 4.6 muss man die flex-sdk-description.xml ändern.

Flash (Debug) Player lässt Firefox abstürzen

…und zwar in Version 3.6.x und 4.0, mindestens. Extrem nervig, das.

Nun hört man (Danke, Harald), dass man in der about:config folgende Zeilen

ändern soll zu

Ich ergänze: Wenn es die erste Zeile nicht gibt, dann kann man sie manuell hinzufügen, als Boolean mit “false”.

Flash Player (10.1): Verbindung mit dem Debugger herstellen

Neulich im Flash Builder: “Es wird auf die Verbindung von Adobe Flash Player mit dem Debugger gewartet”. Die kommt aber nie zustande. Ich hatte das Problem bisher immer, also auch mit dem Flash Player 9 in FDT, …, aber in diesem Fall war es der Flash Player 10.1 (Debug), OS X, Firefox, Flash Builder. Die Lösung:

  1. Run your application in debug mode
  2. Right click over the Flash movie
  3. Change the option from Localhost to “Other Machine”
  4. Type the IP address 127.0.0.1
  5. Click Connect

Danke auch an Christian 🙂