sun.misc.JarIndex, and its accompanying InvalidJarIndexException, are not "Critical APIs", as defined by JEP 260, so they should be moved out of sun.misc and placed into a more appropriate package where they can be encapsulated.
http://cr.openjdk.java.net/~chegar/8152190/00/ https://bugs.openjdk.java.net/browse/JDK-8152190 Since the Exception type is only ever statically referenced where it is thrown, I’ve moved it to a static nested class of JarIndex, so as to keep the namespace cleaner. -Chris.