org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError - Unirest - PullRequest
0 голосов
/ 04 апреля 2019

IntelliJ не выдает ошибку, но консоль выдает ошибку обратного вызова (unirest) при запуске.У меня уже была эта ошибка, но, к сожалению, я никогда ее не исправлял.

В проекте используется зависимость spigot для 1.13.2.

Код:

import com.mashape.unirest.http.HttpResponse;
import com.mashape.unirest.http.JsonNode;
import com.mashape.unirest.http.Unirest;
import com.mashape.unirest.http.async.Callback;
import com.mashape.unirest.http.exceptions.UnirestException;
import org.bukkit.plugin.java.JavaPlugin;

public class Weather extends JavaPlugin {

    @Override
    public void onEnable() {
        // Plugin startup logic
        getServer().getScheduler().runTaskTimer(this, () -> Unirest.get("https://data.buienradar.nl/2.0/feed/json").asJsonAsync(new Callback<JsonNode>() {
            @Override
            public void completed(HttpResponse<JsonNode> response) {
                getServer().broadcastMessage(response.getBody().toString());
                getLogger().info(response.getBody().toString());
            }

            @Override
            public void failed(UnirestException e) {
                e.printStackTrace();
            }

            @Override
            public void cancelled() {

            }
        }), 0, 20 * 30);
    }
}

1 Ответ

0 голосов
/ 12 апреля 2019

org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError - Unirest означает, что класс Unirest не найден во время выполнения.Распространенной ошибкой является то, что вы добавили библиотеку, содержащую класс Unirest в качестве зависимости, но библиотека не экспортируется с вашим плагином.Поэтому убедитесь, что при экспорте вашего плагина библиотека, содержащая класс Unirest, также включается в полученный файл jar.

...