On 7/3/2013 6:32 PM, Jeremy Manson wrote:
I know that this is mentioned in the JEP, but does it really make sense to have -agentpath work here, rather than just -agentlib? I would think that specifying a full pathname and getting the library loaded out of the launcher would be a little surprising to people who are basically saying "please load this agent from the given path".

Also, in practice, we do something very similar at Google, and, when testing, I find it occasionally useful to be able to say "please load this agent on the command line via the agentpath I gave you, rather than loading the one with the same name I baked into the launcher".

(FWIW, when we did this internally at Google, we added a special -XX flag for when the agent is in the launcher. I know that you don't want to go that way, though.)

Thanks for the comments. I would say the thinking here is that we want this to be as transparent as possible to the end user. In our view of the end user is someone perhaps using an IDE and the actual execution of the VM with agent arguments is hidden. In your case it sounds like you are actually developing agents which is a whole different ball game. I could certainly see adding a -XX argument that forces agentpath to load the external library which would be good for agent development and debugging. No need to relink the entire VM with the new agent. Our tech lead is out on vacation this week so I'll bring this up when he's back.

bill


On Wed, Jul 3, 2013 at 2:17 PM, BILL PITTORE <bill.pitt...@oracle.com <mailto:bill.pitt...@oracle.com>> wrote:

    These changes address bug 8014135 which adds support for
    statically linked agents in the VM. This is a followup to the
    recent JNI spec changes that addressed statically linked JNI
    libraries( 8005716).
    The JEP for this change is the same JEP as the JNI changes:
    http://openjdk.java.net/jeps/178

    Webrevs are here:

    http://cr.openjdk.java.net/~bpittore/8014135/jdk/webrev.00/
    <http://cr.openjdk.java.net/%7Ebpittore/8014135/jdk/webrev.00/>
    http://cr.openjdk.java.net/~bpittore/8014135/hotspot/webrev.00/
    <http://cr.openjdk.java.net/%7Ebpittore/8014135/hotspot/webrev.00/>

    The changes to jvmti.xml can also be seen in the output file that
    I placed here:
    http://cr.openjdk.java.net/~bpittore/8014135/hotspot/webrev.00/jvmti.html
    
<http://cr.openjdk.java.net/%7Ebpittore/8014135/hotspot/webrev.00/jvmti.html>

    Thanks,
    bill




Reply via email to