Developer preview
TOD is still under heavy development and suffers from major issues that probably limit its usability. The software made available here is intended for developers interested in the technology. The following features are currently available:
- Trace capture.
- Eclipse integration: launching a program under TOD is as simple as launching it normally.
- Eclipse integration: selecting an event shows the corresponding source code line.
- Stepping: its is possible to step forward and backward.
- Stack and heap inspection.
- Find assignment: jump directly to the place a variable or field was assigned its current value.
- View thrown exceptions
Contributors are welcome. Please contact the maintainer (gpothier at dcc . uchile . cl)
License
TOD and the TOD Eclipse plugin are distributed under the GPL v2.
Additional libraries zz.utils, zz.csg and zz.eclipse.utils are in the public domain.
External libraries have their own licenses.
TOD uses an implementation of the MD5 algorithm “derived from the RSA Data Security, Inc. MD5 Message-Digest Algorithm”.
Binary form
You can download the latest version of the TOD Eclipse plugin here. It has been tested with Eclipse 3.2 and 3.3.
Installation
The installation process of TOD has not been streamlined yet, so there are a few extra steps to perform beyond copying the contents of the plugin's zip file to the Eclipse plugins directory, as explained below.
Reflex Bridge
The current version of TOD uses Reflex and POM for synchronization. We have not yet found a simple and elegant way to use Reflex from within an Eclipse plugin, therefore you have to do the following before being able to use the TOD Eclipse plugin:
- If you launch Eclipse directly using the standard launcher, edit eclipse.ini in your Eclipse installation directory and add the following line at the end:
-javaagent:$ECLIPSE_HOME/plugins/tod.plugin_x.x.x/lib/reflex-bridge.jar
Replace $ECLIPSE_HOME by your Eclipse installation path and use the correct plugin version number.
- If you launch Eclipse with a custom script that passes “-vmargs” to the Eclipse launcher, add the same “-javaagent:” stance after “-vmargs” (the -vmargs on the command line superseedes the one from eclipse.ini).
Native agent
TOD uses a native agent to instrument the classes of the debugged program. Under Windows, the agent needs the mingwm10.dll library, which must be copied from the plugin's lib directory to the system's libraries directory (usually c:windowssystem32).
Source
Source code is available in our Subversion repository.
TOD core: http://pleiad.dcc.uchile.cl/trac/tod/browser/core
TOD Eclipse plugin: http://pleiad.dcc.uchile.cl/trac/tod/browser/tod.plugin
Additional libraries:
zz.utils: http://stgo.dyndns.org/svn/gpothier/devel/zz.utils
zz.eclipse.utils: http://stgo.dyndns.org/svn/gpothier/devel/zz.eclipse.utils