Name | Modified | Size | Downloads / Week |
---|---|---|---|
Parent folder | |||
readme.txt | 2002-08-11 | 2.8 kB | |
controller.jar | 2002-08-09 | 29.2 kB | |
Totals: 2 Items | 32.0 kB | 0 |
LAST UPDATED 00:09 10/AUG/2002 Java Controller Beta 1 by Kenneth McNeill (kenmcneill@hotmail.com) Java Controller - Java-based Profiler and Debugger (no source necessary). *********** * GENERAL * *********** This is a proof-of-concept release using a Swing GUI. There is presently * NO * other documentation other than this "readme". Complete documentation is in progress. **************** * REQUIREMENTS * **************** LIBRARY called "bcel.jar" from Apache's Jakarta. See http://www.apache.com. ********** * TO RUN * ********** type "java -cp [location]/controller.jar;[location]/bcel.jar;{bootstrap classes} ControllerGUI " where [location] is the directory into which the jars are copied. where {bootstrap classes} (optional) are classpath elements that must be defined by the bootstrap classloader. This is an advanced option for such things as protocols, etc., which must be System-defined. **************** * WHAT iT DOES * **************** JavaController launches a Java application inside its own controlled container. It allows you to step through, pause and see method invocations for all threads in Java code without access to source. TO USE: Fill-in the text fields... 1. SPECIFY "Main Class" : the name of your main class. 2. SPECIFY "Arguments" (optional) : any application arguments to be passed to your code (separated by spaces). 3. SPECIFY "Classpath" : your classpath entries (jars and directories separated by semicolons). 4. SPECIFY Properties in the table (optional) : key-value properties to be passed into the JVM. 5. SPECIFY "Exclude" (optional) : packages NOT to be patched or traced (for speed). 6. SPECIFY "Bootstrap" (optional, advanced) : classes that must be defined by the bootstrap classloader. These must be included in the startup classpath (see above). You may save and restore your configuration by using the menu choices. When you are ready to launch your application, click on "PLAY" at the bottom. ***************** * OTHER BUTTONS * ***************** "PAUSE" -- pauses an application by suspending all patched threads. "SAMPLER" -- when selected, the thread window samples method activity with chosen frequency on the left JSlider. "REALTIME" -- steps through method-by-method with chosen frequency at left. CURRENTLY, you cannot cleanly terminate your application without terminating the Java Controller. ********* * TO DO * ********* 1. Provide a configurable logger/recorder 2. Make GUI "networkable" within a separate JVM. 3. Provide customizable "hooks" into methods to trigger user-defined actions based on runtime criteria. 4. Provide better code analysis. Submit your comments to sourceforge. Hack fun, K. McNeill