本帖最后由 洞穴夜莺 于 2021-6-27 09:42 编辑
第一次用@ModifyContant就出了问题
(这东西实在太少见了)
MixinServerPlayNetworkHandler
头顶是@Mixin(ServerPlayNetworkHandler)
完整代码在https://github.com/CaveNightingale/cardboard
崩溃报告
[tr] [/tr][/table]
[table]
第一次用@ModifyContant就出了问题
MixinServerPlayNetworkHandler
头顶是@Mixin(ServerPlayNetworkHandler)
完整代码在https://github.com/CaveNightingale/cardboard
崩溃报告
| ---- Minecraft Crash Report ---- // Everything's going to plan. No, really, that was supposed to happen. Time: 2021/5/23 下午3:20 Description: Exception in server tick loop org.spongepowered.asm.mixin.transformer.throwables.MixinTransformerError: An unexpected critical error was encountered at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:363) at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClass(MixinTransformer.java:208) at org.spongepowered.asm.mixin.transformer.MixinTransformer.transformClassBytes(MixinTransformer.java:178) at org.spongepowered.asm.mixin.transformer.FabricMixinTransformerProxy.transformClassBytes(FabricMixinTransformerProxy.java:23) at net.fabricmc.loader.launch.knot.KnotClassDelegate.getPostMixinClassByteArray(KnotClassDelegate.java:157) at net.fabricmc.loader.launch.knot.KnotClassLoader.loadClass(KnotClassLoader.java:150) at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:522) at net.minecraft.network.ClientConnection.tick(ClientConnection.java:220) at net.minecraft.server.ServerNetworkIo.tick(ServerNetworkIo.java:150) at net.minecraft.server.MinecraftServer.tickWorlds(MinecraftServer.java:878) at net.minecraft.server.MinecraftServer.tick(MinecraftServer.java:804) at net.minecraft.server.integrated.IntegratedServer.tick(IntegratedServer.java:79) at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:662) at net.minecraft.server.MinecraftServer.method_29739(MinecraftServer.java:227) at java.base/java.lang.Thread.run(Thread.java:829) Caused by: org.spongepowered.asm.mixin.injection.throwables.InjectionError: Critical injection failure: Constant modifier method doBukkit_keepAliveTime()I in bukkitfabric.mixins.json:network.MixinServerPlayNetworkHandler failed injection check, (0/1) succeeded. Scanned 1 target(s). No refMap loaded. at org.spongepowered.asm.mixin.injection.struct.InjectionInfo.postInject(InjectionInfo.java:408) at org.spongepowered.asm.mixin.transformer.MixinTargetContext.applyInjections(MixinTargetContext.java:1291) at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyInjections(MixinApplicatorStandard.java:1042) at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.applyMixin(MixinApplicatorStandard.java:395) at org.spongepowered.asm.mixin.transformer.MixinApplicatorStandard.apply(MixinApplicatorStandard.java:320) at org.spongepowered.asm.mixin.transformer.TargetClassContext.applyMixins(TargetClassContext.java:345) at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:569) at org.spongepowered.asm.mixin.transformer.MixinProcessor.applyMixins(MixinProcessor.java:351) ... 14 more A detailed walkthrough of the error, its code path and all known details is as follows: --------------------------------------------------------------------------------------- -- System Details -- Details: Minecraft Version: 1.16.4 Minecraft Version ID: 1.16.4 Operating System: Linux (amd64) version 5.10.36-2-MANJARO Java Version: 11.0.11, Oracle Corporation Java VM Version: OpenJDK 64-Bit Server VM (mixed mode), Oracle Corporation Memory: 768336832 bytes (732 MB) / 1331691520 bytes (1270 MB) up to 2017460224 bytes (1924 MB) CPUs: 8 JVM Flags: 0 total; Fabric Mods: cardboard: CardboardMod ${version} cyber-permissions: CyberPermissions 1.1 fabric: Fabric API 0.20.2+build.402-1.16 fabric-api-base: Fabric API Base 0.1.3+12a8474c95 fabric-blockrenderlayer-v1: Fabric BlockRenderLayer Registration (v1) 1.1.4+c6a8ea8995 fabric-command-api-v1: Fabric Command API (v1) 1.0.8+5ce5339895 fabric-commands-v0: Fabric Commands (v0) 0.2.0+52d3083695 fabric-containers-v0: Fabric Containers (v0) 0.1.8+045df74f95 fabric-content-registries-v0: Fabric Content Registries (v0) 0.1.9+059ea86695 fabric-crash-report-info-v1: Fabric Crash Report Info (v1) 0.1.2+b7f9825d95 fabric-events-interaction-v0: Fabric Events Interaction (v0) 0.4.0+e2e6cdad95 fabric-events-lifecycle-v0: Fabric Events Lifecycle (v0) 0.2.0+16acbe5b95 fabric-game-rule-api-v1: Fabric Game Rule API (v1) 1.0.1+91555cd195 fabric-item-api-v1: Fabric Item API (v1) 1.1.0+29679fd695 fabric-item-groups-v0: Fabric Item Groups (v0) 0.2.0+438f963695 fabric-key-binding-api-v1: Fabric Key Binding API (v1) 1.0.1+730711c695 fabric-keybindings-v0: Fabric Key Bindings (v0) 0.2.0+3fa9f7c595 fabric-lifecycle-events-v1: Fabric Lifecycle Events (v1) 1.2.0+74cc3b2095 fabric-loot-tables-v1: Fabric Loot Tables (v1) 1.0.1+432ea18895 fabric-mining-levels-v0: Fabric Mining Levels (v0) 0.1.2+b764ce9995 fabric-models-v0: Fabric Models (v0) 0.1.0+dfdb52d695 fabric-networking-blockentity-v0: Fabric Networking Block Entity (v0) 0.2.5+b50ffc7b95 fabric-networking-v0: Fabric Networking (v0) 0.1.10+e00ecb5f95 fabric-object-builder-api-v1: Fabric Object Builder API (v1) 1.7.0+432ea18895 fabric-object-builders-v0: Fabric Object Builders (v0) 0.7.0+432ea18895 fabric-particles-v1: fabric-particles-v1 0.2.2+fb0d9b0e95 fabric-registry-sync-v0: Fabric Registry Sync (v0) 0.4.5+fcdfdfa195 fabric-renderer-api-v1: Fabric Renderer API (v1) 0.3.0+8bcfced895 fabric-renderer-indigo: Fabric Renderer - Indigo 0.4.0+8bcfced895 fabric-renderer-registries-v1: Fabric Renderer Registries (v1) 2.1.0+e2862de695 fabric-rendering-data-attachment-v1: Fabric Rendering Data Attachment (v1) 0.1.3+b7f9825d95 fabric-rendering-fluids-v1: Fabric Rendering Fluids (v1) 0.1.11+fb0d9b0e95 fabric-rendering-v0: Fabric Rendering (v0) 1.1.0+5341049095 fabric-rendering-v1: Fabric Rendering (v1) 1.3.0+432ea18895 fabric-resource-loader-v0: Fabric Resource Loader (v0) 0.3.1+facf3bbf95 fabric-screen-handler-api-v1: Fabric Screen Handler API (v1) 1.1.0+8724984195 fabric-structure-api-v1: Fabric Structure API (v1) 1.0.1+fb0d9b0e95 fabric-tag-extensions-v0: Fabric Tag Extensions (v0) 1.0.3+ac8e8c5995 fabric-textures-v0: Fabric Textures (v0) 1.0.4+eae12eb895 fabric-tool-attribute-api-v1: Fabric Tool Attribute API (v1) 1.2.2+ccce563e95 fabricloader: Fabric Loader 0.10.6+build.214 minecraft: Minecraft 1.16.4 Player Count: 0 / 8; [] Data Packs: vanilla, fabric/fabric-tool-attribute-api-v1 Type: Integrated Server (map_client.txt) Is Modded: Definitely; Client brand changed to 'fabric' |
[tr] [/tr][/table]
[table]
ModifyConstant callbacks should always take one argument of the appropriate constant type and return the same type. For example a ModifyConstant for a local of type String should have the signature:
复制代码
- private String methodName(String variable) { ...
The callback receives the original value of the constant, and should return the new value.
摘自 https://jenkins.liteloader.com/v ... ModifyConstant.html