Java NoSuchMethodError, когда метод существуетJAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Java NoSuchMethodError, когда метод существует

Сообщение Anonymous »

Я ссылаюсь на 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, и общедоступный статический двойной метод getMovementSpeed(Player player) действительно существует в экспортированном jar.
РЕДАКТИРОВАТЬ: У моего друга тоже похожая проблема, и он использует IntelliJ, поэтому проблема не в Eclipse.

РЕДАКТИРОВАТЬ: Определение класса для 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, и, похоже, это исправлено!

Спасибо!

Подробнее здесь: https://stackoverflow.com/questions/428 ... hod-exists
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»