Debugging custom scripts interpreted in Java

My company has a scripting language suited to financial analysis. Our interpreter is written in Java, and delegates script commands to underlying Java subroutines.

It would be nice to stop at breakpoints in both our scripts and in the Java code, like the Groovy IntelliJ plugin does.

For comparison, I studied Eclipse's PyDev plugin using Jython, and was able to call Java subroutines from Python. However, because PyDev's Eclipse debugging interface is handled exclusively by the pydevd.py wrapper, it does not allow stepping into the underlying Java code, and my Java breakpoints were ignored.

I had some problems testing the current version of InteilliJ's pythonid plugin, so I do not know how it would behave in the same scenario.

The Groovy IntelliJ plugin works like I would expect, but I bet it gets some freebies by generating Java class files that match the rest of the process being debugged.

I want to develop an IntelliJ plugin for debugging our scripting language. We prototyped a custom stand-alone IDE with simple breakpoint management, so there is already some notion of a debugging framework in place, but it would be much nicer integrated into IntelliJ.

What is the correct way to start writing this integrated debugger plugin for my script and Java files?

Thanks!

--Andrew Mickish

Please sign in to leave a comment.