[Incompatibility] 1.19.4版本的mod与MagicLib mod发生冲突
shinyashen opened this issue · 2 comments
Description
该mod与magiclib mod一同加载后,游戏无法启动,于加载过程中发生崩溃。然而两个mod在分别加载的情况下,游戏均可正常启动。
To Reproduce
使用1.19.4带有最新fabric版本(0.14.17)的客户端,加载fabric-carpet-1.19.4-1.4.101+v230319.jar
, carpet-tis-addition-mc1.19.4-v1.46.1.jar
, magiclib-0.7.289+4d66634-beta.jar
, magiclib-1.19.4-0.7.289+4d66634-beta.jar
这4个mod文件即可复现。
预期结果:游戏正常启动。
实际结果:游戏在加载过程中发生崩溃。
Environment
- Minecraft 版本: 1.19.4
- Carpet 版本: 1.4.101
- Carpet TIS Addition 版本: 1.46.1
- MagicLib 版本: 0.7.242+4d66634(注:其Releases中的版本号与文件名中的版本号不一致,这里为Releases中的版本号)
Log
[19:00:57] [main/INFO]: Loading Minecraft 1.19.4 with Fabric Loader 0.14.17
[19:00:57] [main/INFO]: Loading 9 mods:
- carpet 1.4.101+v230319
- carpet-tis-addition 1.46.1
\-- conditional-mixin 0.3.2
- fabricloader 0.14.17
- java 17
- magiclib 0.7.289+4d66634-beta
- magiclib-1_19_4 0.7.289+4d66634-beta
- minecraft 1.19.4
- mixintrace 1.1.1+1.17
[19:00:57] [main/INFO]: SpongePowered MIXIN Subsystem Version=0.8.5 Source=file:/D:/Game/Minecraft/Main%20game/.minecraft/libraries/net/fabricmc/sponge-mixin/0.12.4+mixin.0.8.5/sponge-mixin-0.12.4+mixin.0.8.5.jar Service=Knot/Fabric Env=CLIENT
[19:00:57] [main/INFO]: Compatibility level set to JAVA_17
[19:01:02] [Datafixer Bootstrap/INFO]: 180 Datafixer optimizations took 115 milliseconds
[19:01:03] [Render thread/INFO]: Environment: authHost='https://authserver.mojang.com', accountsHost='https://api.mojang.com', sessionHost='https://sessionserver.mojang.com', servicesHost='https://api.minecraftservices.com', name='PROD'
[19:01:04] [Render thread/INFO]: Setting user: shinyashen
[19:01:04] [Render thread/INFO]: [MagicLib|Common]: Mod initialized - Version: 0.7.289+4d66634-beta
[19:01:04] [TISCM Mapping/INFO]: Yarn mapping file yarn-1.19.4+build.1-v2.tiny loaded
[19:01:04] [Render thread/INFO]: [MagicLib|Client]: Mod initialized - Version: 0.7.289+4d66634-beta
---- Minecraft Crash Report ----
// Daisy, daisy...
Time: 2023-03-20 19:01:04
Description: Initializing game
java.lang.RuntimeException: Could not execute entrypoint stage 'client' due to errors, provided by 'carpet'!
at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.lambda$invoke0$0(EntrypointUtils.java:51)
at net.fabricmc.loader.impl.util.ExceptionUtil.gatherExceptions(ExceptionUtil.java:33)
at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.invoke0(EntrypointUtils.java:49)
at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.invoke(EntrypointUtils.java:35)
at net.fabricmc.loader.impl.game.minecraft.Hooks.startClient(Hooks.java:53)
at net.minecraft.class_310.<init>(class_310.java:468)
at net.minecraft.client.main.Main.main(Main.java:198)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:462)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
Caused by: java.lang.RuntimeException: java.lang.ClassCastException: class java.util.Optional cannot be cast to class carpet.api.settings.CarpetRule (java.util.Optional is in module java.base of loader 'bootstrap'; carpet.api.settings.CarpetRule is in unnamed module of loader net.fabricmc.loader.impl.launch.knot.KnotClassLoader @5f341870)
at carpettisaddition.settings.CarpetRuleRegistrar.parseRule(CarpetRuleRegistrar.java:108)
at carpettisaddition.settings.CarpetRuleRegistrar.parseSettingsClass(CarpetRuleRegistrar.java:70)
at carpettisaddition.settings.CarpetRuleRegistrar.register(CarpetRuleRegistrar.java:59)
at carpettisaddition.CarpetTISAdditionServer.onGameStarted(CarpetTISAdditionServer.java:100)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
at carpet.CarpetServer.onGameStarted(CarpetServer.java:79)
at java.base/java.lang.invoke.MethodHandleProxies$1.invoke(MethodHandleProxies.java:198)
at jdk.proxy3/com.sun.proxy.jdk.proxy3.$Proxy32.onInitializeClient(Unknown Source)
at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.invoke0(EntrypointUtils.java:47)
... 7 more
Caused by: java.lang.ClassCastException: class java.util.Optional cannot be cast to class carpet.api.settings.CarpetRule (java.util.Optional is in module java.base of loader 'bootstrap'; carpet.api.settings.CarpetRule is in unnamed module of loader net.fabricmc.loader.impl.launch.knot.KnotClassLoader @5f341870)
at carpettisaddition.settings.CarpetRuleRegistrar.parseRule(CarpetRuleRegistrar.java:104)
... 15 more
A detailed walkthrough of the error, its code path and all known details is as follows:
---------------------------------------------------------------------------------------
-- Head --
Thread: Render thread
Stacktrace:
at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.lambda$invoke0$0(EntrypointUtils.java:51)
at net.fabricmc.loader.impl.util.ExceptionUtil.gatherExceptions(ExceptionUtil.java:33)
at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.invoke0(EntrypointUtils.java:49)
at net.fabricmc.loader.impl.entrypoint.EntrypointUtils.invoke(EntrypointUtils.java:35)
at net.fabricmc.loader.impl.game.minecraft.Hooks.startClient(Hooks.java:53)
at net.minecraft.class_310.<init>(class_310.java:468)
Mixins in Stacktrace:
net.minecraft.class_310:
top.hendrixshen.magiclib.language.mixin.MixinMinecraft (magiclib-i18n.mixins.json)
top.hendrixshen.magiclib.compat.minecraft.mixin.client.MixinMinecraft (magiclib-minecraft-compat-api.mixins.json)
carpet.mixins.MinecraftMixin (carpet.mixins.json)
carpet.mixins.Minecraft_pausedShakeMixin (carpet.mixins.json)
carpettisaddition.mixins.core.client.MinecraftClientMixin (carpet-tis-addition.mixins.json)
-- Initialization --
Stacktrace:
at net.minecraft.client.main.Main.main(Main.java:198)
at net.fabricmc.loader.impl.game.minecraft.MinecraftGameProvider.launch(MinecraftGameProvider.java:462)
at net.fabricmc.loader.impl.launch.knot.Knot.launch(Knot.java:74)
at net.fabricmc.loader.impl.launch.knot.KnotClient.main(KnotClient.java:23)
Mixins in Stacktrace: None found
-- System Details --
Details:
Minecraft Version: 1.19.4
Minecraft Version ID: 1.19.4
Operating System: Windows 11 (amd64) version 10.0
Java Version: 17.0.2, Oracle Corporation
Java VM Version: OpenJDK 64-Bit Server VM (mixed mode, sharing), Oracle Corporation
Memory: 260784576 bytes (248 MiB) / 570425344 bytes (544 MiB) up to 8589934592 bytes (8192 MiB)
CPUs: 16
Processor Vendor: GenuineIntel
Processor Name: 11th Gen Intel(R) Core(TM) i7-11800H @ 2.30GHz
Identifier: Intel64 Family 6 Model 141 Stepping 1
Microarchitecture: unknown
Frequency (GHz): 2.30
Number of physical packages: 1
Number of physical CPUs: 8
Number of logical CPUs: 16
Graphics card #0 name: NVIDIA GeForce RTX 3060 Laptop GPU
Graphics card #0 vendor: NVIDIA (0x10de)
Graphics card #0 VRAM (MB): 4095.00
Graphics card #0 deviceId: 0x2560
Graphics card #0 versionInfo: DriverVersion=31.0.15.3129
Memory slot #0 capacity (MB): 8192.00
Memory slot #0 clockSpeed (GHz): 3.20
Memory slot #0 type: DDR4
Memory slot #1 capacity (MB): 8192.00
Memory slot #1 clockSpeed (GHz): 3.20
Memory slot #1 type: DDR4
Virtual memory max (MB): 27483.30
Virtual memory used (MB): 15931.12
Swap memory total (MB): 11264.00
Swap memory used (MB): 268.86
JVM Flags: 11 total; -Xmx8192m -XX:+UnlockExperimentalVMOptions -XX:+UseG1GC -XX:G1NewSizePercent=20 -XX:G1ReservePercent=20 -XX:MaxGCPauseMillis=50 -XX:G1HeapRegionSize=32m -XX:-UseAdaptiveSizePolicy -XX:-OmitStackTraceInFastThrow -XX:-DontCompileHugeMethods -XX:HeapDumpPath=MojangTricksIntelDriversForPerformance_javaw.exe_minecraft.exe.heapdump
Launched Version: reproduce
Backend library: LWJGL version 3.3.1 SNAPSHOT
Backend API: Unknown
Window size: <not initialized>
GL Caps: Using framebuffer using OpenGL 3.2
GL debug messages: <disabled>
Using VBOs: Yes
Is Modded: Definitely; Client brand changed to 'fabric'
Type: Client (map_client.txt)
CPU: <unknown>
建议向 magiclib 汇报这一个 issue。这部分代码不涉及任何可能的 mod 兼容性问题,出现冲突大概率唯一可能是 magiclib 进行了一些非预期的操作