There's an excellent standalone debugger called JSwat which you can study. Is there a particular reason you're trying to build one yourself instead of using one of the existing ones? It'll be quite a project.
Joined: Aug 31, 2004
@Ulf : Yes I know it will be quite a project but I want to make one as I have some specific requirements. Can you guide me toward some theory of debugger i.e how it works etc.
Joined: Mar 22, 2005
Can you tell us a bit about those special requirements? I am betting that it will be easier to start with something like JSwat and incorporating those than to roll your own from scratch. If those features could be of general interest, the lead developer of JSwat might even help you get them implemented, and incorporate them in the official version.
Since the Java VM has its own builtin debugger, every development system I know of uses that. Which is reasonable, because about the only other way you'll be able to see inside the system and set breakpoints, etc. is to create (and debug!) your own JVM.
There's no API I'm aware of - the developer tools simply send text debugging commands to the JVM debugger and present what they pull out of the debugger's text responses. Which should mean that telnet is the simplest remote debugger of them all.
BTW, the Unix "ddd" debugger also supports Java in addition to compiled languages. It's a plugin, I think, but I believe it came already enabled in the version of ddd that came with my Fedora Linux distro.
An IDE is no substitute for an Intelligent Developer.
Originally posted by Tim Holloway: There's no API I'm aware of
So what would you call the JVMTI ???
The soul is dyed the color of its thoughts. Think only on those things that are in line with your principles and can bear the light of day. The content of your character is your choice. Day by day, what you do is who you become. Your integrity is your destiny - it is the light that guides your way. - Heraclitus