retrolambda
retrolambda copied to clipboard
Do not try to translate classes in META-INF/versions
In a multirelease-jar environment, there could be classes under META-INF/versions, which retrolambda would try to translate.
As per definition, these are Java classes newer than Java 1.8, so they shouldn't be processed at all, especially since it is expected that there is at least some version (hopefully 1.8 or older) of that class in the path that is not prefixed by META-INF/versions.
Extend FilteringFileVisitor to never visit /META-INF/versions, and modify FilteringFileVisitor so it's usable in all cases, even when no other filtering is required.
Requires a test case to reproduce whatever was the issue.