In the JDK 17.0.3 release (and other releases, i.e. 11.0.16, 13.0.12, 15.0.8)), the backport of "JDK-8273655 content-types.properties files are missing some common types" breaks VFS in the following way:
Even though this exception states that it occurs in org.reflections.Reflections, the issue is that VFS now returns the incorrect implementation in VirtualFileURLConnection#getContent():
Since the JDK backport (i.e. in 17.0.3 and other releases), the content type is now set to "application/java-archive" instead of null, which pushes the getContent() method info returning a VirtualJarInputStream rather than the expected VirtualFile. A debugger did point out that the virtualFile was properly set.