Add the following to the JVM options:
This means that when the JVM is started, it will listen on TCP port 5006 for remote Java debugging.
In Intellij, you can set this up as a remote configuration. I kept the default values:
Debugger mode: attach
Port already in use
If the debug port is already in use, you may see the following error.
ERROR: transport error 202: bind failed: Address already in use ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510) JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [debugInit.c:750] FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
Either change your port number, or find out what process is using the port.