Closed sebthom closed 4 months ago
Oh boy... this is due to a compiler bug in whatever compiler Google used to compile guava (which is probably some fork of Java that Google has been maintaining a massive patch set against for many years...).
The target type of 0x10
(which means "type in extends
clause of class or interface declaration, or in implements
clause of interface declaration") is only ever supposed to be added to ClassFile
targets (i.e. this should only be used in class annotations), but the exception that you ran into shows that Google's compiler added an annotation tagged with this type to a method_info
target too.
https://docs.oracle.com/javase/specs/jvms/se17/html/jvms-4.html#jvms-4.7.20-420
I saw one of these issues before, with the Oracle compiler adding field annotations to methods, for the new record types. I fixed that by just ignoring these wrong annotations.
I'll have to do the same with this one...
Should be fixed in 4.8.173 (unless the buggy compiler also output something else inappropriate in this case!). Thank you!
Thanks for the quick fix!
@sebthom You're welcome!
when upgrading guava from 33.2.0 to 33.2.1 classgraph suddenly cannot find 9 of guava classes
I am using classgraph like this:
Results e.g. in:
and
I am using these dependencies: