imo class-version-verify.py should ignore module-info.class (when target is 1.9 or lower) as this is a feature introduced in java 9, but some packages (one known case atm is www-servers/tomcat-9.0.38), though built with target 1.8, include also module-info.class which can be at least of version 1.9. this file might add some features that are useful or needed for running the app with jdk/jre 9+ but are ignored in java 1.8-. imo the correct fix might be to just exclude module-info.class from the verification, maybe just in case the target for the package is 1.8 or lower (as for java 9+ the file is valid). tomcat is the first package where i came across this issue so this is atm the only example in the tree.