NestMember requires ASM7 in Byte Buddy

643 views
Skip to first unread message

will.s...@gmail.com

unread,
Jun 26, 2021, 2:42:43 PM6/26/21
to Byte Buddy
Hi all,

I'm instrumenting some java security classes so that I can output logging from them into Logback, and I'm running into a stack trace that I don't understand:

[Byte Buddy] ERROR sun.security.pkcs12.PKCS12KeyStore [null, module java.base, Thread[main,5,main], loaded=true]
java.lang.UnsupportedOperationException: NestMember requires ASM7
    at net.bytebuddy.jar.asm.ClassVisitor.visitNestMember(ClassVisitor.java:251)
    at net.bytebuddy.jar.asm.ClassVisitor.visitNestMember(ClassVisitor.java:254)
    at net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining$WithFullProcessing$RedefinitionClassVisitor.onVisitNestMember(TypeWriter.java:5117)
    at net.bytebuddy.utility.visitor.MetadataAwareClassVisitor.visitNestMember(MetadataAwareClassVisitor.java:233)
    at net.bytebuddy.jar.asm.ClassReader.accept(ClassReader.java:673)
    at net.bytebuddy.jar.asm.ClassReader.accept(ClassReader.java:401)
    at net.bytebuddy.dynamic.scaffold.TypeWriter$Default$ForInlining.create(TypeWriter.java:3919)
    at net.bytebuddy.dynamic.scaffold.TypeWriter$Default.make(TypeWriter.java:2193)
    at net.bytebuddy.dynamic.scaffold.inline.RedefinitionDynamicTypeBuilder.make(RedefinitionDynamicTypeBuilder.java:224)
    at net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer.doTransform(AgentBuilder.java:10930)
    at net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer.transform(AgentBuilder.java:10866)
    at net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer.access$1700(AgentBuilder.java:10584)
    at net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Java9CapableVmDispatcher.run(AgentBuilder.java:11331)
    at net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Java9CapableVmDispatcher.run(AgentBuilder.java:11270)
    at java.base/java.security.AccessController.doPrivileged(Native Method)
    at net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer.doPrivileged(AgentBuilder.java)
    at net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer.transform(AgentBuilder.java:10808)
    at net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$ByteBuddy$ModuleSupport.transform(Unknown Source)

This happens even if I load up the latest ASM onto the classpath.  I haven't seen very many other instances of this error, so the usual "stackoverflow copy/paste" solution isn't working.

Here's a github project replicating the error (note you must have =debug on the agent to see the trace)


And here's a most stripped down version of logging instrumentation to see how it should work:


Any ideas?

Thanks,
Will.

will.s...@gmail.com

unread,
Jun 26, 2021, 3:18:32 PM6/26/21
to Byte Buddy

Rafael Winterhalter

unread,
Jun 26, 2021, 3:42:12 PM6/26/21
to will.s...@gmail.com, Byte Buddy
That's likely the problem. Is your issue solved doing this? 

--
You received this message because you are subscribed to the Google Groups "Byte Buddy" group.
To unsubscribe from this group and stop receiving emails from it, send an email to byte-buddy+...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/byte-buddy/7d3bdcff-2e8a-4440-9389-786e421b63fcn%40googlegroups.com.

Will Sargent

unread,
Jun 26, 2021, 4:02:50 PM6/26/21
to Rafael Winterhalter, Byte Buddy
Yes, that fixes the problem and now everything works.  
Reply all
Reply to author
Forward
0 new messages