add Scalar for Scala support when using Cleanroom
ZZZank opened this issue ยท 7 comments
Cleanroom, unlike Forge, does not includes Scala support by default. This breaks OpenComputer(and possibly other mods) when using Cleanroom.
So I suggest including Scalar by default, just like Fugue.
Link: https://www.curseforge.com/minecraft/mc-mods/scalar
This should not break anything since Scalar should not load under Forge.
Note that the version of Scalar should be 2.x.x(e.g. 2.11.1), NOT 3.x.x. This is because Scalar 3.x is providing Scala3, which is not compatable with Scala2 that Forge mods are using.
Im unable to add Scalar into Java 8 instance since unlike Fugue, Scalar causing crash https://mclo.gs/syl99cJ
[main/FATAL] [Scalar]: Not running on Cleanroom! Cause by {}
java.lang.ClassNotFoundException: com.cleanroommc.loader.LanguageAdapterRegistry
at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?]
at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[?:1.8.0_402]
at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_402]
at java.lang.Class.forName0(Native Method) ~[?:1.8.0_402]
at java.lang.Class.forName(Class.java:264) ~[?:1.8.0_402]
at com.cleanroommc.scalar.ScalarLoadingPlugin.<init>(ScalarLoadingPlugin.java:17) [scalar-1.12.2-2.11.1.jar:?]
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_402]
My bad. It's not crashing on my side because I was using my own fork when testing.
I've uploaded my changes to Github, and there's a prebuilt jar avaliable in the Actions page, the scalar-1.12.2-2.11.1.jar
in artifact
.zip is the mod jar.
Give it a try if possible?
my PR to Scalar has been merged, better wait for a new version of Scalar instead of using my fork :)
Im unable to add Scalar into Java 8 instance since unlike Fugue, Scalar causing crash https://mclo.gs/syl99cJ
[main/FATAL] [Scalar]: Not running on Cleanroom! Cause by {} java.lang.ClassNotFoundException: com.cleanroommc.loader.LanguageAdapterRegistry at net.minecraft.launchwrapper.LaunchClassLoader.findClass(LaunchClassLoader.java:191) ~[launchwrapper-1.12.jar:?] at java.lang.ClassLoader.loadClass(ClassLoader.java:418) ~[?:1.8.0_402] at java.lang.ClassLoader.loadClass(ClassLoader.java:351) ~[?:1.8.0_402] at java.lang.Class.forName0(Native Method) ~[?:1.8.0_402] at java.lang.Class.forName(Class.java:264) ~[?:1.8.0_402] at com.cleanroommc.scalar.ScalarLoadingPlugin.<init>(ScalarLoadingPlugin.java:17) [scalar-1.12.2-2.11.1.jar:?] at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_402]
I forgot to reupload the Forge-safe version
Wait, it shouldn't happen
Are you using the build from CurseForge? Forge should safely ignore that jar
If you are not aware of or have forgotten: Scalar doesn't change version, new jars will be uploaded to same release to match library version