There’s a bug that I’d encountered running the debugger in JDK 1.4.2 ages ago that reared it’s head again today. I’ve been working on a system that uses this old JDK and thought I’d note the solution here in case I ever came across it again.

The problem is encountered when the JVM is launched in debug mode and is reported as:

FATAL ERROR in native method: No transports initialized
Transport dt_socket failed to initialize, rc = 509.

Apparently, from looking at reports of this on the Web, this can happen on any operating system. I encountered it on a Windows XP machine and found that the simplest fix was to copy the following two files from the JAVA_HOME/jre/bin folder, to my c:/windows/system32 folder:

dt_socket.dll
dt_shmem.dll

You can also fix this by putting the JRE bin folder at the start of your PATH environment variable. For a more detailed discussion of the problem take a look at this thread on the Sun forums web site.