The enhanced hotswapping can be triggered using either the low-level JNI/JVMTI interface, class file transformers, or the JDWP debugger interface. There is no API change compared to the restricted hotswapping.
We are currently working on providing a Java API too. In our implementation of dynamic mixins for Java (http://ssw.jku.at/dcevm/mixins/), we are using such a Java API to directly trigger the class redefinition from Java code. Our mixin implementation allows to dynamically add an interface and its implementation to an existing class. - thomas On 12/18/10 5:49 AM, Chanwit Kaewkasi wrote: > Hello Thomas, > > It looks cool, and thank you for binaries. > Is this working through the debugger interface or JVMTI agents? > > Regards, > > Chanwit > > On Sat, Dec 18, 2010 at 00:56, Thomas Wuerthinger > <[email protected]> wrote: >> The source code for the HotSpot version that allows enhanced hotswapping >> (e.g., add and remove methods, fields, and super types) was just updated >> in the mlvm repository. There exists now also a light version of the >> modifications "hotswaplight.patch" that minimizes the difference to the >> current OpenJDK source code by omitting some of the more advanced >> features (e.g., method forwarding, calling deleted old methods, >> transformer methods). The enhanced VM passes all tests of Oracle's class >> redefinition test suite and comes with unit tests for the new features. >> >> There are binary builds available from "http://ssw.jku.at/dcevm" for >> Mac, Linux, and Windows. So, feel free to install a VM with the new >> hotswapping capabilities on your machine and test them using your >> favorite Java IDE. >> >> - thomas >> _______________________________________________ >> mlvm-dev mailing list >> [email protected] >> http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev >> > > _______________________________________________ mlvm-dev mailing list [email protected] http://mail.openjdk.java.net/mailman/listinfo/mlvm-dev
