Fix Java 24 incompatibility #306
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The reason for the crash is that Groovy uses its own version of ASM to read classes. In that version it can only read class files up to version 67 (java 23). Afaik only the classes from java itself have class version 68.
This pr obtains the class bytes not by manually searching pushing an input stream through a class reader, but by using forge methods. Which for some reason doesnt return anything for java classes. I have no idea where the java classes come from because they obviously work.
This likely will become a problem again once mods start to compile for java 24 and higher. At that point we will have to pull to a few classes from groovys asm decompiler and adjust them.