Remote Debugging on Target Platform
ESF can be started with Java Debug Wire Protocol (JDWP) support, allowing the remote debugging of the developed application using Eclipse IDE. The procedure for remote debugging is presented in the following.
- Connect to the target platform (i.e. Reliagate 20-25) and stop the ESF application typing
systemctl stop monit
andsystemctl stop kura
in SystemD images or/etc/init.d/monit stop
and/etc/init.d/kura stop
in SysV systems. - Start ESF with Java Debug Wire Protocol (JDWP) typing
/opt/eurotech/esf/bin/start_kura_debug_foreground.sh
or/opt/eurotech/esf/bin/start_kura_debug_background.sh
. This will start ESF in foreground and open an OSGi console or start ESF in background. It will also start listening for socket connections on port 8000. Note: it can take several minutes for ESF to start.
Note: it can take several minutes for ESF to start. - Open the tcp port 8000 in the firewall, if it is not open yet. This can be done through the firewall tab in ESF web interface.
- Install your application bundle on the target platform.
- From Eclipse IDE, set a breakpoint in the application code at a point that will be reached (i.e. activation method, common logging statement, etc.). Then:
- Go to “Run -> Debug Configurations…”
- Select “Remote Java Application” and click the “New launch configuration” button
- For “Project:”, select the bundle project to be debugged
- For “Connection Type:”, select the default “Standard (Socket Attach)”
- For “Connection Properties:”, enter the IP address of the target platform and the tcp port 8000
- Click Debug
- Eclipse will connect to the target platform VM and switch to the Debug Perspective when the breakpoint will have been hit.
- To stop the remote debugging, select the “Disconnect” button from the Debug Perspective.
Updated over 3 years ago