gpt4 book ai didi

java - 未定义 getDeclaredField 方法

转载 作者:行者123 更新时间:2023-11-29 03:52:49 25 4
gpt4 key购买 nike

我正在修复游戏 minecraft 的模组。但是有一个问题。 mod不是我做的,所以我必须反编译它

长话短说,这是我第一次处理模糊的、不完整的来源。

我只会编辑一个文件(大约 1.5K)。

它反编译很好,我编辑了我想要的,但现在我无法编译它。我正在使用类路径变量将其指向 jar,因此我仍然可以使用游戏其余部分的类。但存在 2 个错误,均涉及“.getDeclaredField(s)”。

代码:

public static Minecraft getMinecraft()
{
try
{
Field field = Minecraft.getDeclaredField("a"); // Error here
field.setAccessible(true);
return (Minecraft)field.get(null);
}
catch(IllegalAccessException illegalaccessexception)
{
illegalaccessexception.printStackTrace();
}
catch(NoSuchFieldException nosuchfieldexception)
{
nosuchfieldexception.printStackTrace();
}
return null;
}

另一种情况就是这样,所以不用给你看。

错误日志:

TMIUtils.java:23: cannot find symbol
symbol : method getDeclaredField(java.lang.String)
location: class net.minecraft.client.Minecraft
Field field = Minecraft.getDeclaredField("a");

我将如何解决这个问题? (请记住,这也是第一次使用 getDeclaredField)

最佳答案

应该是

Minecraft.class.getDeclaredField("a");

可能是反编译器的错误。

getDeclaredField()Class 类型的方法, Minecraft.class 是该类型的文字值。

关于java - 未定义 getDeclaredField 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7892037/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com