Questions & Answers

hbarthel
New Responder

Debugging direkt aus der IDE Isolated mode

Hallo Community,

auf Debugging direkt aus der IDE ist beschrieben, wie das mit fs-client.jar geht. Gibt es sowas auch fรผr fs-isolated-client?

Danke und GruรŸ, Heiko

22 Replies

Hallo Felix und Hรผseyin,

es gibt tatsรคchlich eine Mรถglichkeit, รผber den Launcher gestartete Clients fรผr ein Remote-Debugging vorzukonfigurieren.

Ich muss hier noch abklรคren, รผber welchen Weg diese Mรถglichkeit kommuniziert werden kann. Daher bitte ich um ein wenig Geduld. Smiley Happy

Beste GrรผรŸe

Stefan

Moin,

anscheinend gibt es keinen offiziellen Weg dazu, dann packe ich das jetzt einfach mal hier als Antwort rein.  

Das Debugging kann man รผber einen Eintrag in der FSLauncher.vmoptions Datei aktivieren. Diese befindet sich unter Windows im AppData-Bereich fรผr den FSLauncher. Dort kann der folgende Eintrag hinzugefรผgt werden:

-DclientDebugging=true


Ist dies aktiviert, wird beim Starten eines Clients ein Port ausgewรผrfelt und als Agent-Port vergeben. Welcher Port es ist, wird im Launcher angezeigt:

launcher_debug_port.jpg

Dieser kann dann fรผr das รผbliche Remote-Debugging aus der IDE heraus genutzt werden.

Ich hoffe, das hilft.

Beste GrรผรŸe

Stefan

Hi Stefan,

super - vielen Dank. Funktioniert einwandfrei ๐Ÿ™‚

Dann drรผcke ich mal die Daumen, dass uns dieser inoffizielle Weg lange erhalten bleibt ๐Ÿ˜‰

Viele GrรผรŸe

Felix

0 Kudos

mhhh, ich kann die besagte FSLauncher.vmoptions leider nirgends finden (unter Windows). Hab die ganze Festplatte abgesucht.

Habt ihr vlt. noch einen sachdienlicher Hinweis was ich da falsch machen kรถnnte? Ich benutze den Launcher, er ist auch am laufen und auch ein SiteArchitect ist offen .. trotzdem finde ich leider nix ๐Ÿ˜•

0 Kudos

Hey SebastianStiemerโ€‹,

Ich konnte die Datei unter folgendem Pfad finden:

C:\Users\user-xyz\AppData\Local\Programs\

Dort liegen - in meinem Fall - 2 FSLauncher Ordner und in beiden finde ich die besagte Datei.

Wenn dort nichts ist, dann weiรŸ ich es leider auch nicht

Der AppData-Ordner ist im Normalfall ausgeblendet.

V.G. Matthias

Vielen Dank. Ja da hab ich die Datei auch. Smiley Happy

0 Kudos
larsquitsch
Returning Observer

Hat jemand eine Ahnung, wo ich die Datei beim Mac finde? bzw. wie das dorf funktionieren kรถnnte?

Viele GrรผรŸe,

Lars

0 Kudos
bIT_sosswald
Returning Responder

Hi zusammen,

ist das wirklich die einzige Mรถglichkeit den Launcher einen Port wรผrfeln zu lassen? Dann muss ich ja bei jedem Start meine Debug-Config in der IDE รคndern. ๐Ÿ˜ž

Der Alte weg den Client direkt รผber eine entsprechende Run-Configuration aus der IDE zu starten fand ich da auch deutlich eleganter.

Hat schon jemand rausgefunden wie das geht? Bzw. gibt es da von e-Spirit einen offiziellen Weg?

Beste GrรผรŸe

Sandro

0 Kudos

auf dem Mac: "/Applications/FirstSpirit Launcher.app/Contents/vmoptions.txt" Die Datei gibt es da bereits.

0 Kudos
mbergmann
Crownpeak employee

Hallo,

es gibt noch eine andere (allerdings genauso inoffizielle!) Variante des SA-Starts aus der IDE.

Die hat sogar den Vorteil, dass - wenn man in der IDE den "debug" statt des "start"-Buttons wรคhlt - bei clientseitig ausgefรผhrtem Code die lokalen Klassen benutzt werden. Dadurch kann man die mal schnell anpassen und testen ohne immer das FSM installieren zu mรผssen. Man muss allerdings jeweils den SA einmal beenden und รผber die IDE wieder starten. Falls Eintrรคge in der module.xml hinzugefรผgt/angepasst werden, muss das FSM neu gebaut und installiert werden, weil die module.xml lokal natรผrlich nicht ausgewertet wird.

Voraussetzung ist, dass die fs-isolated-client.jar als Dependency eingetragen ist - und zwar in der Reihenfolge vor der fs-isolated-runtime.jar.

Hier am Beispiel von IntelliJ

Eine Run-Configuration vom Typ "Application" anlegen.

Main Class: de.espirit.common.bootstrap.Bootstrap

VM-Options:
(Achtung, nicht Program arguments! - in IntelliJ muss man die je nach Version erst รผber "modify options" hinzufรผgen)

-Dhost=<fs-host>

-Dmode=HTTP

-Dport=<port>

-Dlogin=plain

-Dlogin.user=<user>

-Dlogin.password=<password>

-Dlocale=<client-locale>

-DdevMode=1

-Dproject="<project-name>"

-DLogLevel=[info|warn|error|debug]

also zum Beispiel:

-Dhost=localhost

-Dmode=HTTP

-Dport=8000

-Dlogin=plain

-Dlogin.user=bergmann

-Dlogin.password=Mb2.r5oHf-0t

-Dlocale=en

-DdevMode=1

-Dproject="Mithras Energy"

-DLogLevel=info

Viele GrรผรŸe

Michael

Type a product name