In JarClassesAnalysis.java:153-155:
JarVersionedRuntime rootContentVersionedRuntime = runtimeVersionsMap.remove(ROOT);
jarData.setRootEntries(rootContentVersionedRuntime.getEntries()); // NPE if no ROOT
If a malformed multi-release JAR has no root-level entries (every entry is under META-INF/versions/N/), runtimeVersionsMap has no ROOT key, remove(ROOT) returns null, and .getEntries() throws a NullPointerException.
Fix: Guard against null:
JarVersionedRuntime rootContent = runtimeVersionsMap.remove(ROOT);
if (rootContent != null) {
jarData.setRootEntries(rootContent.getEntries());
}
In
JarClassesAnalysis.java:153-155:If a malformed multi-release JAR has no root-level entries (every entry is under
META-INF/versions/N/),runtimeVersionsMaphas noROOTkey,remove(ROOT)returnsnull, and.getEntries()throws a NullPointerException.Fix: Guard against null: