When attempting to launch a server debug session, sometimes the plugin will permit the "startup console" to be closed, disconnecting the IDE's debugger from the server session. This usually happens when starting the debug session while an application has been deployed from within the IDE (in 3.0.1), or is deployed in any form (in 3.1).
When this happens, the IDE's debugger fails to properly synchronize with the server's JVM and one has to manually follow the debug by constantly double-clicking the paused stack line in the thread list.
When the debug session launches, and does not allow the launcher console to be closed after termination, debugging works perfectly.
The most faithful repro scenario is with 3.0.1 interaction (which I believe will expose the for 3.1 interaction as well). I'll be happy to help provide exact repro steps if the above info is insufficient.