ProbeJS

ProbeJS

3M Downloads

Forge 1.20.1 dump fails

FemBane opened this issue ยท 7 comments

commented

Dump fails due to "net.fabricmc.fabric.api.blockview.v2.FabricBlockView" not found, but this is an entirely forge modpack, no sinytra connector at all.

https://mclo.gs/BssiyPE

commented

Running it with only the server mods + probejs yields a success when on a singleplayer world. So it's definitely a client-side mod... No idea which

commented

Looks like the class scanning is touching something that shouldn't be loaded... It would be quite a problem to fix considering the current development focus is very on 1.21.1.

commented

Experiecing the same issue. Is there any work around?

commented

I was having this same issue until I removed AdvancementJS and all related scripts. Not sure why but it wouldn't dump anything other than entity_type and item/block types otherwise. Now it dumps classes and stuff too

commented

For me it was these:

  • Structure Gel API (used by Blue Skies)
  • Xaero's World Map
  • Xaero's Minimap

If you're running into this, look in the log immediately after the probejs error for a line like this to get a hint about what mod to disable:

Caused by: org.spongepowered.asm.mixin.transformer.throwables.IllegalClassLoadError: com.legacy.structure_gel.core.mixin.ChunkAccessMixin is in a defined mixin package com.legacy.structure_gel.core.mixin.* owned by structure_gel.mixins.json and cannot be referenced directly

With those mods (and their dependents) disabled, I was able to get this output which sounds success-like:

[19Jan2025 00:11:50.260] [Render thread/INFO] [probejs/]: Loading mappings for 1.20.1
[19Jan2025 00:11:50.354] [Render thread/INFO] [probejs/]: Loaded 0 plugins
[19Jan2025 00:11:50.358] [Render thread/INFO] [probejs/]: JVM info: Azul Systems, Inc. - 17.0.13 - 17.0.13+11-LTS
[19Jan2025 00:11:50.373] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] ProbeJS dump started.
[19Jan2025 00:11:51.332] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Snippets for VSCode generated.
[19Jan2025 00:11:51.334] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Mod environment changed.
[19Jan2025 00:11:51.334] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Removing old dump files that might contain invalid classes... This can be slow.
[19Jan2025 00:11:51.339] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Removed typing for script type CLIENT.
[19Jan2025 00:11:51.340] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Removed typing for script type SERVER.
[19Jan2025 00:11:51.341] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Removed typing for script type STARTUP.
[19Jan2025 00:12:02.614] [Render thread/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Discovered 11879 classes to generate typing for.
[19Jan2025 00:12:05.666] [Thread-49/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] Dump executing... Current progress: 3645/11858, 3629/11935, 3647/11993
[19Jan2025 00:12:08.283] [Thread-46/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] The typing generation of script type CLIENT is finished.
[19Jan2025 00:12:08.296] [Thread-48/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] The typing generation of script type STARTUP is finished.
[19Jan2025 00:12:08.298] [Thread-47/INFO] [net.minecraft.client.gui.components.ChatComponent/]: [System] [CHAT] The typing generation of script type SERVER is finished.

... but there's still no probe directory under my kubejs directory, and the only thing in the .vscode directory is code snippets. Anyone else on 1.20.1 figured out how to get past this point?

Edit: Oh wait, I do have a .probe directory in the top level .minecraft. Can I just copy those files where they need to be? I don't know what structure vs code expects.

commented

also had this problem on 1.20.1 forge, I managed to get around it by disabling these mods

Sodium/Embeddium Options API (sodiumoptionsapi-forge-1.0.10-1.20.1.jar)
Sodium/Embeddium Dynamic Lights (sodiumdynamiclights-forge-1.0.10-1.20.1.jar)
Embeddium (embeddium-0.3.31+mc1.20.1.jar)
Sodium/Embeddium Options Mod Compat (sodiumoptionsmodcompat-forge-1.0.0-1.20.1.jar)
Chloride (Embeddium++/Sodium++) (chloride-FORGE-mc1.20.1-v1.7.2.jar)

Oculus (oculus-mc1.20.1-1.8.0.jar)
Iris/Oculus & GeckoLib Compat (GeckoLibOculusCompat-Forge-1.0.1.jar)
Iris & Oculus Flywheel Compat (oculus-flywheel-compat-Forge-2.0.3.jar)

Idk which one is the actual culprit but it was something sodium-derived at least

commented

Same issue with YSM 2.5.1-forge-1.20.1.

Related code :

package com.elfmcys.yesstevemodel.client.compat.top;

import mcjty.theoneprobe.api.*;
import net.minecraft.network.chat.Component;
import net.minecraft.resources.ResourceLocation;
import net.minecraft.server.level.ServerPlayer;
import net.minecraft.world.entity.Entity;
import net.minecraft.world.entity.player.Player;
import net.minecraft.world.level.Level;
import org.apache.commons.lang3.StringUtils;
import org.jetbrains.annotations.Nullable;

import java.util.function.Function;

public final class TopPlugin implements Function<ITheOneProbe, Void> {
    @Nullable
    @Override
    public Void apply(@Nullable ITheOneProbe probe) {
        if (probe != null) {
            probe.registerEntityProvider(new YSMProvider());
        }
        return null;
    }

    private static class YSMProvider implements IProbeInfoEntityProvider {
        private static final String ID = "model_info";

        @Override
        public void addProbeEntityInfo(ProbeMode probeMode, IProbeInfo probeInfo, 
                Player sourcePlayer, Level world, Entity entity, IProbeHitEntityData iProbeHitEntityData) {
        }

        @Override
        public String getID() {
            return ID;
        }
    }
}
package com.elfmcys.yesstevemodel.event;

import com.elfmcys.yesstevemodel.client.compat.top.TopPlugin;
import net.minecraftforge.eventbus.api.SubscribeEvent;
import net.minecraftforge.fml.InterModComms;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.event.lifecycle.InterModEnqueueEvent;

@Mod.EventBusSubscriber(bus = Mod.EventBusSubscriber.Bus.MOD)
public final class InterModMsg {
    @SubscribeEvent
    @SuppressWarnings("Convert2MethodRef")
    public static void onEnqueue(final InterModEnqueueEvent event) {
        InterModComms.sendTo("theoneprobe", "getTheOneProbe", () -> new TopPlugin());
    }
}

Error log :

[22:54:38] [Render thread/ERROR]: Error executing client command "probejs dump"
java.lang.RuntimeException: java.lang.NoClassDefFoundError: mcjty/theoneprobe/api/ProbeMode
	at moe.wolfgirl.probejs.GameEvents.lambda$registerCommand$3(GameEvents.java:76) ~[probejs-7.0.0-forge.jar%23178!/:?]
	at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:264) ~[brigadier-1.1.8.jar%23113!/:?]
	at com.mojang.brigadier.CommandDispatcher.execute(CommandDispatcher.java:177) ~[brigadier-1.1.8.jar%23113!/:?]
	at net.minecraftforge.client.ClientCommandHandler.runCommand(ClientCommandHandler.java:161) ~[forge-1.20.1-47.4.9-universal.jar%23187!/:?]
	at net.minecraft.client.multiplayer.ClientPacketListener.m_246623_(ClientPacketListener.java:2418) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.client.gui.screens.ChatScreen.m_241797_(ChatScreen.java:223) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.client.gui.screens.ChatScreen.m_7933_(ChatScreen.java:101) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.client.KeyboardHandler.lambda$keyPress$5(KeyboardHandler.java:379) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.client.gui.screens.Screen.m_96579_(Screen.java:437) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.client.KeyboardHandler.m_90893_(KeyboardHandler.java:369) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.client.KeyboardHandler.m_167831_(KeyboardHandler.java:462) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.util.thread.BlockableEventLoop.execute(BlockableEventLoop.java:102) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.client.KeyboardHandler.m_90938_(KeyboardHandler.java:461) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at org.lwjgl.glfw.GLFWKeyCallbackI.callback(GLFWKeyCallbackI.java:44) ~[lwjgl-glfw-3.3.1.jar%23141!/:build 7]
	at org.lwjgl.system.JNI.invokeV(Native Method) ~[lwjgl-3.3.1.jar%23153!/:build 7]
	at org.lwjgl.glfw.GLFW.glfwPollEvents(GLFW.java:3403) ~[lwjgl-glfw-3.3.1.jar%23141!/:build 7]
	at com.mojang.blaze3d.systems.RenderSystem.pollEvents(RenderSystem.java:201) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at com.mojang.blaze3d.systems.RenderSystem.flipFrame(RenderSystem.java:219) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at com.mojang.blaze3d.platform.Window.m_85435_(Window.java:274) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.client.Minecraft.m_91383_(Minecraft.java:1170) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.client.Minecraft.m_91374_(Minecraft.java:718) ~[client-1.20.1-20230612.114412-srg.jar%23182!/:?]
	at net.minecraft.client.main.Main.main(Main.java:218) ~[1.20.1-47.3.1%e5%96%b5.jar:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:?]
	at jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[?:?]
	at jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:?]
	at java.lang.reflect.Method.invoke(Method.java:568) ~[?:?]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.runTarget(CommonLaunchHandler.java:111) ~[fmlloader-1.20.1-47.4.9.jar:?]
	at net.minecraftforge.fml.loading.targets.CommonLaunchHandler.clientService(CommonLaunchHandler.java:99) ~[fmlloader-1.20.1-47.4.9.jar:?]
	at net.minecraftforge.fml.loading.targets.CommonClientLaunchHandler.lambda$makeService$0(CommonClientLaunchHandler.java:25) ~[fmlloader-1.20.1-47.4.9.jar:?]
	at cpw.mods.modlauncher.LaunchServiceHandlerDecorator.launch(LaunchServiceHandlerDecorator.java:30) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:53) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.LaunchServiceHandler.launch(LaunchServiceHandler.java:71) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.Launcher.run(Launcher.java:108) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.Launcher.main(Launcher.java:78) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:26) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.modlauncher.BootstrapLaunchConsumer.accept(BootstrapLaunchConsumer.java:23) ~[modlauncher-10.0.9.jar:?]
	at cpw.mods.bootstraplauncher.BootstrapLauncher.main(BootstrapLauncher.java:141) ~[bootstraplauncher-1.1.2.jar:?]
Caused by: java.lang.NoClassDefFoundError: mcjty/theoneprobe/api/ProbeMode
	at java.lang.Class.getDeclaredConstructors0(Native Method) ~[?:?]
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:3373) ~[?:?]
	at java.lang.Class.getConstructors(Class.java:2060) ~[?:?]
	at dev.latvian.mods.rhino.JavaMembers.getAccessibleConstructors(JavaMembers.java:656) ~[rhino-forge-2001.2.3-build.10.jar%23179!/:2001.2.3-build.10]
	at dev.latvian.mods.rhino.JavaMembers.reflect(JavaMembers.java:645) ~[rhino-forge-2001.2.3-build.10.jar%23179!/:2001.2.3-build.10]
	at dev.latvian.mods.rhino.JavaMembers.<init>(JavaMembers.java:261) ~[rhino-forge-2001.2.3-build.10.jar%23179!/:2001.2.3-build.10]
	at dev.latvian.mods.rhino.JavaMembers.lookupClass(JavaMembers.java:208) ~[rhino-forge-2001.2.3-build.10.jar%23179!/:2001.2.3-build.10]
	at moe.wolfgirl.probejs.utils.RemapperUtils.getConstructors(RemapperUtils.java:35) ~[probejs-7.0.0-forge.jar%23178!/:?]
	at moe.wolfgirl.probejs.lang.java.clazz.Clazz.<init>(Clazz.java:38) ~[probejs-7.0.0-forge.jar%23178!/:?]
	at moe.wolfgirl.probejs.lang.java.ClassRegistry.discoverClasses(ClassRegistry.java:103) ~[probejs-7.0.0-forge.jar%23178!/:?]
	at moe.wolfgirl.probejs.ProbeDump.trigger(ProbeDump.java:97) ~[probejs-7.0.0-forge.jar%23178!/:?]
	at moe.wolfgirl.probejs.GameEvents.lambda$registerCommand$3(GameEvents.java:74) ~[probejs-7.0.0-forge.jar%23178!/:?]
	... 36 more
Caused by: java.lang.ClassNotFoundException: mcjty.theoneprobe.api.ProbeMode
	at jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) ~[?:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at cpw.mods.cl.ModuleClassLoader.loadClass(ModuleClassLoader.java:137) ~[securejarhandler-2.1.10.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at cpw.mods.cl.ModuleClassLoader.loadClass(ModuleClassLoader.java:137) ~[securejarhandler-2.1.10.jar:?]
	at java.lang.ClassLoader.loadClass(ClassLoader.java:520) ~[?:?]
	at java.lang.Class.getDeclaredConstructors0(Native Method) ~[?:?]
	at java.lang.Class.privateGetDeclaredConstructors(Class.java:3373) ~[?:?]
	at java.lang.Class.getConstructors(Class.java:2060) ~[?:?]
	at dev.latvian.mods.rhino.JavaMembers.getAccessibleConstructors(JavaMembers.java:656) ~[rhino-forge-2001.2.3-build.10.jar%23179!/:2001.2.3-build.10]
	at dev.latvian.mods.rhino.JavaMembers.reflect(JavaMembers.java:645) ~[rhino-forge-2001.2.3-build.10.jar%23179!/:2001.2.3-build.10]
	at dev.latvian.mods.rhino.JavaMembers.<init>(JavaMembers.java:261) ~[rhino-forge-2001.2.3-build.10.jar%23179!/:2001.2.3-build.10]
	at dev.latvian.mods.rhino.JavaMembers.lookupClass(JavaMembers.java:208) ~[rhino-forge-2001.2.3-build.10.jar%23179!/:2001.2.3-build.10]
	at moe.wolfgirl.probejs.utils.RemapperUtils.getConstructors(RemapperUtils.java:35) ~[probejs-7.0.0-forge.jar%23178!/:?]
	at moe.wolfgirl.probejs.lang.java.clazz.Clazz.<init>(Clazz.java:38) ~[probejs-7.0.0-forge.jar%23178!/:?]
	at moe.wolfgirl.probejs.lang.java.ClassRegistry.discoverClasses(ClassRegistry.java:103) ~[probejs-7.0.0-forge.jar%23178!/:?]
	at moe.wolfgirl.probejs.ProbeDump.trigger(ProbeDump.java:97) ~[probejs-7.0.0-forge.jar%23178!/:?]
	at moe.wolfgirl.probejs.GameEvents.lambda$registerCommand$3(GameEvents.java:74) ~[probejs-7.0.0-forge.jar%23178!/:?]
	... 36 more