我正在参考PlayerUtil.getMovementSpeed(player);
在我的 Speed 类和 PlayerUtil 类中,我将方法定义为:
public static double getMovementSpeed(Player player) {
//my code here
}
但是每当在我的其他类中引用 getMovementSpeed 方法时,它都会抛出此错误:
java.lang.NoSuchMethodError: net.Swedz.util.PlayerUtil.getMovementSpeed(Lorg/bukkit/entity/Player;)D
我认为可能是Eclipse导出不正确,但我重新启动它并再次尝试,但没有成功。
EDIT:我确实尝试反编译导出的 jar,并且public static double getMovementSpeed(Player player)
方法确实存在于导出的 jar 中。
EDIT:我的朋友也有类似的问题,并且正在使用 IntelliJ,所以 Eclipse 不是问题。
EDIT:PlayerUtil 的类定义:
package net.Swedz.util;
public class PlayerUtil implements Listener {
//getMovementSpeed is defined in here
}
速度的类定义:
package net.Swedz.hack.detect.move;
public class Speed implements Hack, Listener {
//my detection methods and method containing PlayerUtil.getMovementSpeed(player);
}
解决方案:我自己发现我的服务器上的两个插件之间存在类冲突。我有一罐net.Swedz.util.PlayerUtil
另一个与net.Swedz.util.PlayerUtil
两者都有不同的内容。我在后面添加了全部小写的项目名称net.Swedz
它似乎已经修复了!
Thanks!