@@ -0,0 +1,1074 @@
+import java.lang.reflect.Method;%0A%0Apublic final class DelegatingMain %7B%0A    @SuppressWarnings(%7B %22rawtypes%22, %22unchecked%22 %7D)%0A    public static void main(String%5B%5D args) throws Exception %7B%0A        if (args.length == 0) %7B%0A            com.ibm.nmon.gui.main.NMONVisualizerGui.main(new String%5B0%5D);%0A        %7D%0A        else %7B%0A            String className = args%5B0%5D;%0A            Class clazz = null;%0A%0A            String%5B%5D newArgs = null;%0A%0A            try %7B%0A                clazz = Class.forName(className);%0A%0A                // remove the class name from the arguments%0A                newArgs = new String%5Bargs.length - 1%5D;%0A                System.arraycopy(args, 1, newArgs, 0, newArgs.length);%0A            %7D%0A            catch (ClassNotFoundException e) %7B%0A                // assume passing arguments to NMONVisualizerGui%0A                clazz = com.ibm.nmon.gui.main.NMONVisualizerGui.class;%0A%0A                newArgs = args;%0A            %7D%0A%0A            Method main = clazz.getMethod(%22main%22, String%5B%5D.class);%0A            main.invoke(DelegatingMain.class, (Object) newArgs);%0A        %7D%0A    %7D%0A%7D%0A

Create DelegatingMain.java