JOL 0.5

Aleksey Shipilev aleksey.shipilev at oracle.com
Fri Apr 15 11:11:02 UTC 2016


Hi,

JOL 0.5 is released and available at Maven Central (thanks to Evgeny
Mandrikov, as always!). This is a major release, and includes the
following changes:

 * Jigsaw compatibility. JOL now works with latest JDK 9 EA without
significant problems. Notably, this required us to refactor our
Instrumentation and HotSpot Serviceability Agent support, and do other
minor touchups:
   https://bugs.openjdk.java.net/browse/CODETOOLS-7901658
   https://bugs.openjdk.java.net/browse/CODETOOLS-7901659
   https://bugs.openjdk.java.net/browse/CODETOOLS-7901661

 * Large arrays sizes were misrepresented (int overflows :/). Changing
sizes to longs all around JOL makes this an incompatible API change, and
users that depend on this library would have to adjust. Bug:
   https://bugs.openjdk.java.net/browse/CODETOOLS-7901657

 * GraphLayout.parseInstance(arr1, arr2) mismatches second argument as
varargs array. We now do accept single-argument, or varargs-argument
parseInstance (this would require casting arrays to Objects explicitly
in some cases):
   https://bugs.openjdk.java.net/browse/CODETOOLS-7901656

 * CLassLayout.parseClass(A).toPrintable(B) was "okay" with instance B
not being a compatible with class A, producing garbage output. Fixed:
   https://bugs.openjdk.java.net/browse/CODETOOLS-7901660

 * JOL Samples updates. Make sure you read them and understand them
before interpreting JOL results!

http://hg.openjdk.java.net/code-tools/jol/file/tip/jol-samples/src/main/java/org/openjdk/jol/samples/

As usual, a fully runnable JAR is available on Central:

http://central.maven.org/maven2/org/openjdk/jol/jol-cli/0.5/jol-cli-0.5-full.jar

Enjoy!

-Aleksey



More information about the jol-dev mailing list