Currently -XX:+PrintSharedArchiveAndExit doesn't print much information. For diagnostic/development purpose, it's better to print more detailed information of the archive header(s).
$ java -XX:+PrintSharedArchiveAndExit
[0.002s][info][class,path] opened: /jdk2/bld/jem/images/jdk/lib/modules
[0.006s][info][class,path] Expecting BOOT path=/jdk2/bld/jem/images/jdk/lib/modules
[0.006s][info][class,path] Expecting -Djava.class.path=
[0.006s][info][class,path] checking shared classpath entry: /jdk2/bld/jem/images/jdk/lib/modules
[0.006s][info][class,path] ok
archive is valid
(You can get more information with this, but still not sufficient)
$ java -XX:+PrintSharedArchiveAndExit -Xlog:cds*=debug
[0.002s][info][class,path] opened: /jdk2/bld/jem/images/jdk/lib/modules
[0.007s][info][cds ] Archive was created with UseCompressedOops = 1, UseCompressedClassPointers = 1
[0.007s][debug][cds ] Reserved archive_space_rs [0x0000000900000000 - 0x0000000900b31000] (11735040) bytes
[0.007s][debug][cds ] Reserved class_space_rs [0x0000000900b31000 - 0x0000000940b31000] (1073741824) bytes
[0.007s][info ][cds ] Mapped static region #0 at base 0x0000000900000000 top 0x0000000900003000 (MiscCode)
[0.007s][info ][cds ] Mapped static region #1 at base 0x0000000900003000 top 0x00000009003e5000 (ReadWrite)
[0.007s][info ][cds ] Mapped static region #2 at base 0x00000009003e5000 top 0x0000000900b31000 (ReadOnly)
[0.007s][info ][class,path] Expecting BOOT path=/jdk2/bld/jem/images/jdk/lib/modules
[0.007s][info ][class,path] Expecting -Djava.class.path=
[0.007s][info ][class,path] checking shared classpath entry: /jdk2/bld/jem/images/jdk/lib/modules
[0.007s][info ][class,path] ok
[0.007s][info ][cds ] CDS archive was created with max heap size = 16096M, and the following configuration:
[0.007s][info ][cds ] narrow_klass_base = 0x0000000900000000, narrow_klass_shift = 3
[0.007s][info ][cds ] narrow_oop_mode = 1, narrow_oop_base = 0x0000000000000000, narrow_oop_shift = 3
[0.007s][info ][cds ] The current max heap size = 16096M, HeapRegion::GrainBytes = 8388608
[0.007s][info ][cds ] narrow_klass_base = 0x0000000900000000, narrow_klass_shift = 3
[0.007s][info ][cds ] narrow_oop_mode = 1, narrow_oop_base = 0x0000000000000000, narrow_oop_shift = 3
[0.007s][info ][cds ] CDS heap data relocation delta = 0 bytes
[0.007s][info ][cds ] Trying to map heap data: region[4] at 0x00000007bf800000, size = 507904 bytes
[0.007s][info ][gc,cds ] Mark closed archive regions in map: [0x00000007bf800000, 0x00000007bf87bff8]
[0.007s][info ][cds ] Trying to map heap data: region[6] at 0x00000007bf000000, size = 335872 bytes
[0.007s][info ][gc,cds ] Mark open archive regions in map: [0x00000007bf000000, 0x00000007bf051ff8]
[0.007s][debug][cds,vtables] Copying 14 vtable entries for ConstantPool
[0.007s][debug][cds,vtables] Copying 40 vtable entries for InstanceKlass
[0.007s][debug][cds,vtables] Copying 40 vtable entries for InstanceClassLoaderKlass
[0.007s][debug][cds,vtables] Copying 40 vtable entries for InstanceMirrorKlass
[0.007s][debug][cds,vtables] Copying 40 vtable entries for InstanceRefKlass
[0.007s][debug][cds,vtables] Copying 14 vtable entries for Method
[0.007s][debug][cds,vtables] Copying 41 vtable entries for ObjArrayKlass
[0.007s][debug][cds,vtables] Copying 41 vtable entries for TypeArrayKlass
archive is valid
$ java -XX:+PrintSharedArchiveAndExit
[0.002s][info][class,path] opened: /jdk2/bld/jem/images/jdk/lib/modules
[0.006s][info][class,path] Expecting BOOT path=/jdk2/bld/jem/images/jdk/lib/modules
[0.006s][info][class,path] Expecting -Djava.class.path=
[0.006s][info][class,path] checking shared classpath entry: /jdk2/bld/jem/images/jdk/lib/modules
[0.006s][info][class,path] ok
archive is valid
(You can get more information with this, but still not sufficient)
$ java -XX:+PrintSharedArchiveAndExit -Xlog:cds*=debug
[0.002s][info][class,path] opened: /jdk2/bld/jem/images/jdk/lib/modules
[0.007s][info][cds ] Archive was created with UseCompressedOops = 1, UseCompressedClassPointers = 1
[0.007s][debug][cds ] Reserved archive_space_rs [0x0000000900000000 - 0x0000000900b31000] (11735040) bytes
[0.007s][debug][cds ] Reserved class_space_rs [0x0000000900b31000 - 0x0000000940b31000] (1073741824) bytes
[0.007s][info ][cds ] Mapped static region #0 at base 0x0000000900000000 top 0x0000000900003000 (MiscCode)
[0.007s][info ][cds ] Mapped static region #1 at base 0x0000000900003000 top 0x00000009003e5000 (ReadWrite)
[0.007s][info ][cds ] Mapped static region #2 at base 0x00000009003e5000 top 0x0000000900b31000 (ReadOnly)
[0.007s][info ][class,path] Expecting BOOT path=/jdk2/bld/jem/images/jdk/lib/modules
[0.007s][info ][class,path] Expecting -Djava.class.path=
[0.007s][info ][class,path] checking shared classpath entry: /jdk2/bld/jem/images/jdk/lib/modules
[0.007s][info ][class,path] ok
[0.007s][info ][cds ] CDS archive was created with max heap size = 16096M, and the following configuration:
[0.007s][info ][cds ] narrow_klass_base = 0x0000000900000000, narrow_klass_shift = 3
[0.007s][info ][cds ] narrow_oop_mode = 1, narrow_oop_base = 0x0000000000000000, narrow_oop_shift = 3
[0.007s][info ][cds ] The current max heap size = 16096M, HeapRegion::GrainBytes = 8388608
[0.007s][info ][cds ] narrow_klass_base = 0x0000000900000000, narrow_klass_shift = 3
[0.007s][info ][cds ] narrow_oop_mode = 1, narrow_oop_base = 0x0000000000000000, narrow_oop_shift = 3
[0.007s][info ][cds ] CDS heap data relocation delta = 0 bytes
[0.007s][info ][cds ] Trying to map heap data: region[4] at 0x00000007bf800000, size = 507904 bytes
[0.007s][info ][gc,cds ] Mark closed archive regions in map: [0x00000007bf800000, 0x00000007bf87bff8]
[0.007s][info ][cds ] Trying to map heap data: region[6] at 0x00000007bf000000, size = 335872 bytes
[0.007s][info ][gc,cds ] Mark open archive regions in map: [0x00000007bf000000, 0x00000007bf051ff8]
[0.007s][debug][cds,vtables] Copying 14 vtable entries for ConstantPool
[0.007s][debug][cds,vtables] Copying 40 vtable entries for InstanceKlass
[0.007s][debug][cds,vtables] Copying 40 vtable entries for InstanceClassLoaderKlass
[0.007s][debug][cds,vtables] Copying 40 vtable entries for InstanceMirrorKlass
[0.007s][debug][cds,vtables] Copying 40 vtable entries for InstanceRefKlass
[0.007s][debug][cds,vtables] Copying 14 vtable entries for Method
[0.007s][debug][cds,vtables] Copying 41 vtable entries for ObjArrayKlass
[0.007s][debug][cds,vtables] Copying 41 vtable entries for TypeArrayKlass
archive is valid