-
Bug
-
Resolution: Fixed
-
P4
-
None
-
None
Currently several of the agent ASM components are being constructed with Opcodes.ASM5, this causes problems now that we've bumped the version of ASM up to 8.0.1, as some calls are now enforcing a minimum opcodes version, leading to crashes like
SEVERE: Failed to instrument instrumentMe()V
java.lang.UnsupportedOperationException: This feature requires ASM7
at org.openjdk.jmc.internal.org.objectweb.asm.ClassVisitor.visitNestMember(ClassVisitor.java:249)
at org.openjdk.jmc.internal.org.objectweb.asm.ClassReader.accept(ClassReader.java:670)
at org.openjdk.jmc.internal.org.objectweb.asm.ClassReader.accept(ClassReader.java:401)
at org.openjdk.jmc.agent.Transformer.doJFRLogging(Transformer.java:111)
at org.openjdk.jmc.agent.Transformer.doTransform(Transformer.java:91)
at org.openjdk.jmc.agent.Transformer.doTransforms(Transformer.java:80)
at org.openjdk.jmc.agent.Transformer.transform(Transformer.java:69)
at java.instrument/java.lang.instrument.ClassFileTransformer.transform(ClassFileTransformer.java:246)
at java.instrument/sun.instrument.TransformerManager.transform(TransformerManager.java:188)
at java.instrument/sun.instrument.InstrumentationImpl.transform(InstrumentationImpl.java:563)
at java.base/java.lang.ClassLoader.defineClass1(Native Method)
at java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1016)
at java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174)
at java.base/jdk.internal.loader.BuiltinClassLoader.defineClass(BuiltinClassLoader.java:802)
at java.base/jdk.internal.loader.BuiltinClassLoader.findClassOnClassPathOrNull(BuiltinClassLoader.java:700)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClassOrNull(BuiltinClassLoader.java:623)
at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
at java.base/java.lang.Class.forName0(Native Method)
at java.base/java.lang.Class.forName(Class.java:398)
at java.base/sun.launcher.LauncherHelper.loadMainClass(LauncherHelper.java:760)
at java.base/sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:655)