structurize-0.13.153-ALPHA-universal and later break Java 11 compatibility
SiliconAshes opened this issue ยท 6 comments
structurize-0.13.153-ALPHA-universal.jar and later break Java 11 compatibility. structurize-0.13.150-ALPHA-universal.jar and earlier do not exhibit this problem. Upon insertion into a clean Minecraft/Forge 36.1.0 or later instance, that instance will error on attempted start with the error:
Structurize (structurize) has failed to load correctly
java.lang.IncompatibleClassChangeError: Inconsistent constant pool data in classfile for class
Alpha 151, and Alpha 152 were not available on Curseforge for testing.
Steps to reproduce:
(tested with forge 36.1.0 and 36.1.4, on Win 10 using AdoptOpenJDK jdk-11.0.10+9-hs as the JVM).
-
Using AdoptOpenJDK jdk-11.0.10+9-hs (and very likely others) as the JVM, install forge 36.1.0 or later on a vanilla Minecraft 16.5 instance.
-
Add structurize-0.13.153-ALPHA-universal.jar or later.
-
Attempt to start the instance. Instance fails with above error. structurize-0.13.150-ALPHA-universal.jar and earlier load and appear to function correctly. Using Java 8 (tested with jre-x64-mojang8) as the JVM also does not exhibit this problem.
I did attach a sample crash report.
Great! At least you know. Thank you.
As another submitter commented, didn't expect it to be closed without fixing, hence didn't see the previous. There are reasons I cannot use Java 8, there may be others in that situation also. So, putting in a plug to consider fixing anyway - I really like the mod.
Why can't you use Java 8? It's what ships with Minecraft. And it might/probably will be fixed eventually
There are a couple of things actually. The first is that, though 8 is indeed the shipping release, it lags my admittedly somewhat older machines, and makes game play choppy. I have no idea why. For some reason, I thought at the time of my last testing that it was related to memory management changes. In any event, in playing around today, I see that the issue sadly remains the same for me. The other is having to choose between structurize/minecolonies, which I think is really quite cool and another - though I'll have to dig around to see which it was that loads, but behaves poorly on 8.
In any event. Thanks for the mod. I can continue to use 148 for now, and hope! Take care
Few side notes regarding performance and jre8 (just to make sure you are aware of them, they may or may not help you):
- use the latest jre8 (not jdk, unless you are a developer too) of version 282 and make sure the correct jre is selected in the launcher (so you don't use the ancient one Mojang ships), it can be grabbed eg. here https://adoptopenjdk.net/releases.html?variant=openjdk8&jvmVariant=hotspot
- Don't overshoot xmX and xmS params, xmX should be from 2,5 to cca 6 gb depending on heaviness of the mod pack
- if you are experienced enough you can try to play with other jvm params using launcher profile, if not at least try to reset them by creating a new launcher profile and copying the args to the old profile
When I am having issues, I try the Mojang version as a fail-safe. I do run the latest AdoptOpenJDK version/versions (or reasonable close to it). Your notes on memory usage are good, and I'm glad to see them. I am running 5632MB for xmX, haven't tweaked the xmS parameter. My procedure for setting the xmX parameter is to tweak it down until the game starts freezing periodically, then tweak it up until it stops, then round up to the nearest 0.5 GB.
I am reasonably comfortable in tweaking computer settings generally, but I am not that familiar with Java settings, so I will definitely take your advice. The game plays so smoothly and well on 11, but just doesn't for me on 8. I probably do need to fiddle with 8 again, and see if I can remedy that.
Your suggestions are much appreciated - As is the discussion. Thank you!