在spigot插件上进行了一些工作之后,IntelliJ本身并没有给出错误,但是在jar构建时(加载到服务器中时),控制台会打印出一个unirest回调错误。

该项目对1.13.2使用spigot依赖项。

码:

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);
    }
}

最佳答案

org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError - Unirest表示在运行时找不到类Unirest。一个常见的错误是,您添加了包含类Unirest的库作为依赖项,但是该库未随插件一起导出。因此,请确保在导出插件时,包含类Unirest的库也包含在生成的jar文件中。

关于java - org.bukkit.plugin.InvalidPluginException:java.lang.NoClassDefFoundError-Unirest,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55517358/

10-09 20:41