NativeImplemntationRegistry.registerNative(new NativeImplementationAdapter(mainClass, MethodSignature.parse("print", "(Ljava/lang/String;)V")) {
NativeImplementationRegistry.registerNative(new NativeImplementationAdapter(mainClass, MethodSignature.parse("print", "(Ljava/lang/String;)V")) {
    public static void main(String[] args) throws IOException {        ClassPath classPath = new AggregatingClassPath(                new ZipClassPath("/Library/Java/JavaVirtualMachines/jdk1.7.0_51.jdk/Contents/Home/jre/lib/rt.jar"),                new DirectoryClassPath(System.getProperty("user.dir") + "/target/test-classes/com/mcintyret2/jvm"));        String mainClass = "com/mcintyret2/jvm/test/Main";        NativeImplemntationRegistry.registerNative(new NativeImplementationAdapter(mainClass, MethodSignature.parse("print", "(Ljava/lang/String;)V")) {            @Override            public NativeReturn execute(int[] args) {                System.out.println("NATIVE METHOD!!!: " + Utils.toString(Heap.getOop(args[0])));                return NativeReturn.forVoid();            }        });        new Runner().run(classPath, mainClass);    }