que tenían el mismo problema, y se encontró ClassPool.getDefault no estaba lanzando una excepción, pero Throwable. De hecho, estaba lanzando java.lang.NoClassDefFoundError. En mi manifiesto, que tenían:
Premain-Class: timing.TimingTransform
Boot-Class-Path: lib/javassist.jar
Es probable que sólo tiene que apuntar la Bota-Class-Path al archivo javassist.jar. En mi caso, con Boot-Class-Path arriba, necesitaba un directorio lib con javassist.jar en él.
El error que hice inicialmente estaba poniendo javassist.jar dentro del archivo jar agente (EL siguiente es incorrecto, para fines de demostración solamente):
0 Mon Oct 24 16:58:14 MST 2011 META-INF/
146 Mon Oct 24 16:58:14 MST 2011 META-INF/MANIFEST.MF
0 Thu Oct 20 14:58:06 MST 2011 timing/
2482 Mon Oct 24 16:58:06 MST 2011 timing/TimingStats.class
8360 Mon Oct 24 16:58:06 MST 2011 timing/TimingTransform.class
0 Tue Oct 18 17:28:24 MST 2011 lib/
645252 Fri Jul 08 18:24:58 MST 2011 lib/javassist.jar
en lugar de poner javassist.jar dentro del archivo jar agente , Lo puse en un directorio externo accesible para el programa. Después de ese cambio, funcionó bien.
¿Ha detectado ninguna excepción? –
@ThomasUhrig sin :(muy extraño que se convertirá en una locura - cuando quito la PRINTLN Veo excepción ... – JohnJohnGa