Currently two facilities for debugging are available - the printing of all class members recursively, and the ability to limit the depth of recurisve methods.
The easiest way to start using this is to simply run {@link com.futureshocked.classloader.ApplicationDebugger} with the the appropriate arguments (make sure to include the full name, with package, of all classes). For example:
java com.futureshocked.classloader.ApplicationDebugger ClassWithMainMethod "void com.user.package.ClassYouWishToDebug.methodToDebug(java.lang.String arg1, int arg2)" (any arguments for main method)
For more control, make a new ApplicationDebugger instance and call the appropriate methods:
ApplicationDebugger ad = new ApplicationDebugger(String classWithMainMethod, String[] argsForMainMethod); ad.setVerbose(true); // print debugging information InterceptedMethod im = ad.addCodeStyleMethod( "java.lang.String com.my.package.TestClass.testMethod(int arg1)", true, true); im.setRecursionLimiter(30); // max recursive depth of 30 im.removeStaticDebuggerCall(); // instead, could have used false for first boolean above ad.run();