Plugins 使用绝地-Minecraft服务器加载插件时出错

Plugins 使用绝地-Minecraft服务器加载插件时出错,plugins,loading,minecraft,jedis,Plugins,Loading,Minecraft,Jedis,只是想知道是什么原因造成的。我不知道 我正在尝试制作一个队列插件。我用的是纸插口。请忽略我的插件代码中的所有漏洞,因为我只是在测试它。如果你有什么你认为我应该改变的,我很乐意在这里。这是终端发出的错误消息 [19:29:52 ERROR]: Could not load 'plugins\anarchyqueuet3.jar' in folder 'plugins' org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFou

只是想知道是什么原因造成的。我不知道

我正在尝试制作一个队列插件。我用的是纸插口。请忽略我的插件代码中的所有漏洞,因为我只是在测试它。如果你有什么你认为我应该改变的,我很乐意在这里。这是终端发出的错误消息

[19:29:52 ERROR]: Could not load 'plugins\anarchyqueuet3.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException: java.lang.NoClassDefFoundError: redis/clients/jedis/Jedis
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:131) ~[patched_1.12.2.jar:git-Paper-1618]
        at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:329) ~[patched_1.12.2.jar:git-Paper-1618]
        at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:251) ~[patched_1.12.2.jar:git-Paper-1618]
        at org.bukkit.craftbukkit.v1_12_R1.CraftServer.loadPlugins(CraftServer.java:318) ~[patched_1.12.2.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.DedicatedServer.init(DedicatedServer.java:222) ~[patched_1.12.2.jar:git-Paper-1618]
        at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:616) ~[patched_1.12.2.jar:git-Paper-1618]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_241]
Caused by: java.lang.NoClassDefFoundError: redis/clients/jedis/Jedis
        at com.Package.AnarchyQueue.<init>(AnarchyQueue.java:19) ~[?:?]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_241]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_241]
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_241]
        at java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:1.8.0_241]
        at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_241]
        at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:94) ~[patched_1.12.2.jar:git-Paper-1618]
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:127) ~[patched_1.12.2.jar:git-Paper-1618]
        ... 6 more
Caused by: java.lang.ClassNotFoundException: redis.clients.jedis.Jedis
        at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_241]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:156) ~[patched_1.12.2.jar:git-Paper-1618]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:104) ~[patched_1.12.2.jar:git-Paper-1618]
        at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_241]
        at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_241]
        at com.Package.AnarchyQueue.<init>(AnarchyQueue.java:19) ~[?:?]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.8.0_241]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_241]
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.8.0_241]
        at java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:1.8.0_241]
        at java.lang.Class.newInstance(Unknown Source) ~[?:1.8.0_241]
        at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:94) ~[patched_1.12.2.jar:git-Paper-1618]
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:127) ~[patched_1.12.2.jar:git-Paper-1618]
        ... 6 more
我看到一篇文章谈到需要使用pom.xml添加依赖项,但我不知道这是否适用于我

提前感谢,

如果你需要什么,尽管问


爱德华

你试图
导入redis.clients.jedis.jedis
根据:


希望这有帮助,我在这里回答任何问题,你有

很抱歉这么晚才回复,我决定暂停这个项目。我没有使用maven或gradle。
package com.Package;

import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.event.player.PlayerJoinEvent;
import org.bukkit.plugin.java.JavaPlugin;
import org.bukkit.scheduler.BukkitScheduler;
import com.google.common.io.ByteArrayDataOutput;
import com.google.common.io.ByteStreams;
import redis.clients.jedis.Jedis;
import java.util.ArrayList;
import java.util.logging.Logger;

public class AnarchyQueue extends JavaPlugin {
    //list of players in queue
    private ArrayList<Player> players = new ArrayList<Player>();
    //jedis object to communicate with other server
    private Jedis jedis = new Jedis("localhost");
    private int playerCount = 0;
    static int maxPlayerCount = 10;

    @Override
    public void onEnable() {
        onEnablePri();
    }

    @Override
    public void onDisable() {
        onDisablePri();
    }

    public void onPlayerJoin(PlayerJoinEvent event)
    {
        onPlayerJoinPri(event);
    }

    @Override
    public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
        onCommandPri(sender,command,label,args);
        return true;
    }

    //--------------------private methods--------------------

    private void onEnablePri() {
        log("Server test: "+jedis.ping(),1);
        BukkitScheduler scheduler = getServer().getScheduler();
        scheduler.scheduleSyncRepeatingTask(this, new Runnable() {
            @Override
            public void run() {
                runPri();
            }
        }, 0L, 10L);;
    }

    private void runPri() {
        try {
            playerCount=Integer.parseInt(jedis.get("anarchy-player-count"));
        } catch (Exception e) {
            log("Player count get failed",1);
        }
        if(playerCount<maxPlayerCount)
        {
            ByteArrayDataOutput out = ByteStreams.newDataOutput();
            out.writeUTF("Connect");
            out.writeUTF("anarchy");
            players.get(0).sendPluginMessage(this, "BungeeCord", out.toByteArray());
            players.remove(0);
        }
    }

    private void onDisablePri() {
        //disable code
    }

    private void onPlayerJoinPri(PlayerJoinEvent event)
    {
        players.add(event.getPlayer());
    }

    private void onCommandPri(CommandSender sender, Command command, String label, String[] args) {
        if(command.getName().equalsIgnoreCase("setmaxplayercount"))
        {
            jedis.set("anarchy-player-count",args[0]);
        }
        /*if (command.getName().equalsIgnoreCase("players")) {
            if (!(sender instanceof Player)) {
                sender.sendMessage("You must be in game!");
            }
            else {
                getCount();
            }
        } */ 
    }

    //private void getCount() {   

    //}

    private void log(String str, int i)
    {
        if(i==0)
        {
            Logger.getLogger("Minecraft").info(str);
        }
        else
        {
            if(i!=1)
            {
                System.out.println("NUMBER NOT RECOGNISED: ");
            }
            System.out.println(str);
        }
    }   
}
main: com.Package.AnarchyQueue
name: AnarchyQueue
version: '1.0'
description: The queue plugin for Ed_Silver's anarchy server.
load: postworld
author: Ed_Silver
prefix: AnarchyQueue
commands:
  setmaxplayercount:
   description: Sets max player count
   usage: /setmaxplayercount [int]