On 03/12/2015 12:42, Michael Rasmussen wrote:
:
Doing the individual steps, by building the patch, and then running
with -javaagent and -Xpatch (tested with b86), I am currently able to
get this running. I can mention that the project in question is JRebel,
and with the above steps, I can successfully reload classes.
Good to hear you got it going and I hope you will be able to try things
out and work with us as JVM TI evolves to work with module aware agents.
I'm in two minds on -Xpatch as it feels more like implementation
specific a JVM TI extension function rather than something for the
standard API but that discussion is for later.
:
Also, a side note:
My comments in the original mail regarding AddToBootstrapClassLoaderSearch
not working as indended, seemed to stem from it being corrupted because
I was changing the "sun.boot.class.path" property as well. A quick glance
in the code made it look like it was an issue with an internal index that
pointed to where in the boot class path new stuff should be appended to,
but changing the property directly didn't update the index, so it got
corrupted when both were called -- but since that property is no longer
available that issue is kind of moot now. Although, I haven't tested or
looking into if changing the "jdk.boot.class.path.append" property directly
have the same corruption issues?
Just so I understand, are you changing the memory in the value returned
by GetSystemProperty and not calling SetSystemProperty?
-Alan