Thursday, March 06, 2008

Eclipse, TPTP and accursed JVMTI

I had Eclipse's update manager automatically "upgrade" some of the component versions, including the TTPT tools I was using to try to profile some VERY SLOW code I'm working on, and since then (and following multiple restarts of Eclipse and a reboot), I cannot profile any Java code.
Hitting the "Test availability" button for the post-1.5 JRE data collectors freezes Eclipse for about 10 seconds before popping up an alert box which states "The JVMTI agent org.eclipse.tptp.jvmti is not available", with a "Show details" button which expands the dialogue to display a completely blank textbox. This is clearly bollox. Searching the web leads to forum posts advising to meddle with the "Agent Controller" and RAServer programs, but I can't find them and never needed to before.

What Eclipse needs is a lightweight, simple profiler which doesn't run into stupid problems like this. For fuck's sake, I've spent over an hour getting nowhere with this stuff. Of course this would happen now, when I'm expected to give a demo of the code (running faster than what it replaces) on Monday morning.

Results of "Test Availability":

Trying to run the profiler:

An automatic update should not break Eclipse's profiler completely. Now I've gotta go with the good old "manually insert time measurement code all over the shop" technique, which fairly sucks.


  1. I feel exactly the same.Running into the same problems.We have been trying for the past 2 days and it just doesnt click!!!!if you figure out how to solve it, please do post.

  2. Sad to say, the debugger, profiler and load generator in Netbeans blow Eclipse away. They keep it as simple as possible (not simpler) and it works.

    It would be nice to ditch TPTP and create a set of actually useful tools similar to those in Netbeans.

  3. @Mitsadein:

    Will have to check out the Netbeans tools - it does seem lighter in weight as an IDE.

    Also, TPTP still doesn't work on OS X, it seems. I offered to help a couple of years ago, but they didn't seem interested, then whoever was expected to do it ended up not doing it. Oh well...