I'm no expert in this area, especially regarding invokedynamic and
bootstrap methods attributes. I see from the JVM spec that you are
referring to the constant pool BootstrapMethods attribute. Also from the
JVM spec I see that there are other attributes that JVMTI does not
provide any special access to. Some you can get with various JVMTI APIs,
like GetLocalVariableTable, which gives you the part of the
LocalVariableTable attribute that is relevant to the specified method.
But there are attributes that don't have any special APIs to access,
such as NestHost, NestMembers, Record, or PermittedSubclasses,
What might work for you is to just to fetch the constant pool using
GetConstantPool, and get the BootstrapMethods attribute from it.
Chris
On 8/13/22 3:20 PM, Ada wrote:
Hi,
I'm writing a JVMTI tool that needs to parse bytecode. To parse
invokedynamic, you need to read from the parent class' bootstrap
methods attribute, there is no current function in the JVMTI spec to
get this information, not having this information isn't the end of the
world but it seems odd. Am I missing something in regards to this, if
not, are there any plans for adding this functionality in the future?