CleanroomMC / Cleanroom

Cleanroom Minecraft.
GNU Lesser General Public License v2.1
167 stars 37 forks source link

Groovy script error with Nomifactory CEU 1.7 that doesn't exist on Vanilla Forge #116

Closed lynxx131 closed 1 month ago

lynxx131 commented 2 months ago

Your CleanroomMC Discord Username

No response

Cleanroom Version

15.24.0.3036

Java Version

Java 21

Graphics Card Vendor

NVidia

Bug Report

Not sure where to log this one but when running Nomi CEU under Cleanroom on Java 21 I get a groovy script error that does not present itself under Vanilla Forge on Java 8.

============  GroovyLog  ====  13.04.2024  ============
GroovyScript version: 0.8.0
[22:19:00] [CLIENT/INFO] [nomiceu]: Running scripts in loader 'preInit'
[22:19:23] [CLIENT/INFO] [nomiceu]: Running scripts in loader 'init'
[22:19:24] [CLIENT/INFO] [nomiceu]: Running scripts in loader 'postInit'
[22:19:25] [CLIENT/INFO] [nomiceu]:  - executing postInit\Post-Initial\Main\General\Early-Game\earlygame.groovy
[22:19:25] [CLIENT/ERROR] [nomiceu]: An exception occurred while running scripts. Look at latest.log for a full stacktrace:
    java.lang.NoClassDefFoundError: net/minecraft/item/ItemStack
        at java.base/java.lang.Class.getDeclaredMethods0(Native Method)
        at java.base/java.lang.Class.privateGetDeclaredMethods(Class.java:3578)
        at java.base/java.lang.Class.privateGetPublicMethods(Class.java:3603)
        at java.base/java.lang.Class.getMethods(Class.java:2185)
        at java.desktop/com.sun.beans.introspect.MethodInfo.get(MethodInfo.java:89)
        at java.desktop/com.sun.beans.introspect.ClassInfo.getMethods(ClassInfo.java:82)
        at java.desktop/java.beans.Introspector.getTargetMethodInfo(Introspector.java:1029)
        at java.desktop/java.beans.Introspector.getBeanInfo(Introspector.java:446)
        at java.desktop/java.beans.Introspector.getBeanInfo(Introspector.java:195)
        at groovy.lang.MetaClassImpl.lambda$addProperties$25(MetaClassImpl.java:3465)
        at java.base/java.security.AccessController.doPrivileged(AccessController.java:571)
        at groovy.lang.MetaClassImpl.doPrivileged(MetaClassImpl.java:3497)
        at groovy.lang.MetaClassImpl.addProperties(MetaClassImpl.java:3465)
        at groovy.lang.MetaClassImpl.reinitialize(MetaClassImpl.java:3447)
        at groovy.lang.MetaClassImpl.initialize(MetaClassImpl.java:3440)
        at org.codehaus.groovy.reflection.ClassInfo.getMetaClassUnderLock(ClassInfo.java:272)
        at org.codehaus.groovy.reflection.ClassInfo.getMetaClass(ClassInfo.java:314)
        in earlygame.groovy in line 20
        at com.cleanroommc.groovyscript.sandbox.GroovySandbox.loadScripts(GroovySandbox.java:142)

I think the helper their Groovy script is using is in https://github.com/Nomi-CEu/Nomi-Labs/blob/main/src/main/java/com/nomiceu/nomilabs/groovy/ReplaceRecipe.java#L112.

The script itself is https://github.com/Nomi-CEu/Nomi-CEu/blob/main/overrides/groovy/postInit/Post-Initial/Main/General/Early-Game/earlygame.groovy.

Latest Log: https://mclo.gs/T8DGh4L Debug Log: https://mclo.gs/MZCSU12

I'm happy to log an issue in the Nomi Labs repo if need be, but just looking for a bit of guidance since I can only re-produce this issue under Cleanroom.

Mod List

Vanilla Nomi CEU 1.7-alpha-4 mods and config from Curse.

Ignore missing mod messages in my log I copied the test world over from an instance where I'd changed a couple of mods.

MMC Instance Notes

Using CleanroomMMC pack config but upgraded to 15.24.0.3036.

Final Checklist

lynxx131 commented 1 month ago

Upgrading to latest Fogue and the latest cleanroom MMC instance has stopped the Groovy errors from appearing.