OpenModsLib

OpenModsLib

56M Downloads

Use ASM5 to solve java 8 issues

RX14 opened this issue ยท 7 comments

commented

The ASM4 api crashes when it reaches a java 8 class with the message java.lang.IllegalArgumentException: INVOKESPECIAL/STATIC on interfaces require ASM 5. Forge is using ASM5, but you manually specify to use ASM4 in your subclasses of ClassTransformer. Because several mods that utilise java 8 have come out, this causes a crash on startup.

See NOVA-Team/NOVA-Monorepo#185 for the original issue.

I belive this may simply be fixed by changing the Opcodes.ASM4 to Opcodes.ASM5 in your source, although this may cause other incompatibilities. Unfortunately my current computer is not good enough to run minecraft so I cannot contribute and test a patch.

Thanks in advance.

commented

Here seems to be a migration guide to ASM5, it looks like you need to do more than simply replace that code: http://movingfulcrum.tumblr.com/post/80826553604/asm-framework-50-the-missing-migration-guide

commented

although this may cause other incompatibilities

Yup, tons of it. Sorry, but there are still quite a lot of instances (bukkit) that ships with ASM4.

EDIT: IMO, no mod should require Java 8 at this point, as long as MC supports 1.6 only.

commented

Ah, i didn't realise this library was used outside of MinecraftForge. It seems unfortunate that the mods that use java 8 cause an immediate crash with this mod though. Is there any other workaround?

commented

Yes, we er, kinda made them.

commented

Ok, it looks that since last time I checked, Forge/FML officially updated to ASM5. So it looks like I can update too.

commented

Thanks, I will ask the user to test the new version.

commented

Only once it comes. There are few WIP things right now.