Я хочу добавить "insertBefore" в метод основного класса JDK 5. Почему-то не работает. Вот пример кода:
ClassPool pool = ClassPool.getDefault();
CtClass ctClass = pool.get("com.sun.org.apache.xerces.internal.impl.xs.XSMessageFormatter");
CtMethod ctMethod = ctClass.getDeclaredMethods()[0];
ctMethod.insertBefore("System.out.println(\"WORKED\");");
ctClass.toClass();
com.sun.org.apache.xerces.internal.impl.xs.XSMessageFormatter поставляется в комплекте с JDK, он находится внутри rt.jar. После приведенного выше фрагмента кода я запускаю некоторый код, который вызывает запуск класса XSMessageFormatter, но мой вставленный код никогда не запускается. Я могу заставить это работать только на моих собственных классах. Этот код работает как простое автономное приложение.
Есть идеи?