PlayerUnknownDevGround
Новичок
- Баллы
- 6
- Имя в Minecraft
- dev
Приветствую разработчики и просто посетители страницы, столкнулся с проблемой которую никак не могу решить, после нормальной компиляции выскакивает эта ошибка:
[16:56:27 ERROR]: Error occurred while enabling WelcomeSpawn v0.0.1 (Is it up to date?)
java.lang.NullPointerException: Cannot invoke "org.bukkit.command.PluginCommand.setExecutor(org.bukkit.command.CommandExecutor)" because the return value of "ruan.com.WelcomeSpawn.getCommand(String)" is null
at ruan.com.WelcomeSpawn.onEnable(WelcomeSpawn.java:18) ~[WelcomeSpawn-0.0.1.jar:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:287) ~[paper-api-1.20.4-R0.1-SNAPSHOT.jar:?]
at io.papermc.paper.plugin.manager.PaperPluginInstanceManager.enablePlugin(PaperPluginInstanceManager.java:188) ~[paper-1.20.4.jar:git-Paper-496]
at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.enablePlugin(PaperPluginManagerImpl.java:104) ~[paper-1.20.4.jar:git-Paper-496]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:507) ~[paper-api-1.20.4-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.v1_20_R3.CraftServer.enablePlugin(CraftServer.java:639) ~[paper-1.20.4.jar:git-Paper-496]
at org.bukkit.craftbukkit.v1_20_R3.CraftServer.enablePlugins(CraftServer.java:550) ~[paper-1.20.4.jar:git-Paper-496]
at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:671) ~[paper-1.20.4.jar:git-Paper-496]
at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:431) ~[paper-1.20.4.jar:git-Paper-496]
at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:309) ~[paper-1.20.4.jar:git-Paper-496]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1131) ~[paper-1.20.4.jar:git-Paper-496]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:319) ~[paper-1.20.4.jar:git-Paper-496]
at java.lang.Thread.run(Thread.java:1583) ~[?:?]
Смотрел другие форумы на rubukkit и т.д так и не понял в чем дело, я прикрепляю и даю моей команде setExecutor но по какой то причине метод выкидывает мувик что он упирается в null, вообще ничего не понимаю. Только начинаю в этом деле и могу не знать даже самого банального, так что прошу подсказать и камнями не бросать ❤️
Вот мой код:
paper-plugin:
MainClass:
MainCommand:
Даже если я комментрирую else-if
tab.add("spawn");
tab.add("set-spawn");
Все равно выдает ошибку, знаю что могу использовать switch но решил по быстрому попробовать, и проблема не внутри класса.. Или внутри..
[16:56:27 ERROR]: Error occurred while enabling WelcomeSpawn v0.0.1 (Is it up to date?)
java.lang.NullPointerException: Cannot invoke "org.bukkit.command.PluginCommand.setExecutor(org.bukkit.command.CommandExecutor)" because the return value of "ruan.com.WelcomeSpawn.getCommand(String)" is null
at ruan.com.WelcomeSpawn.onEnable(WelcomeSpawn.java:18) ~[WelcomeSpawn-0.0.1.jar:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:287) ~[paper-api-1.20.4-R0.1-SNAPSHOT.jar:?]
at io.papermc.paper.plugin.manager.PaperPluginInstanceManager.enablePlugin(PaperPluginInstanceManager.java:188) ~[paper-1.20.4.jar:git-Paper-496]
at io.papermc.paper.plugin.manager.PaperPluginManagerImpl.enablePlugin(PaperPluginManagerImpl.java:104) ~[paper-1.20.4.jar:git-Paper-496]
at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:507) ~[paper-api-1.20.4-R0.1-SNAPSHOT.jar:?]
at org.bukkit.craftbukkit.v1_20_R3.CraftServer.enablePlugin(CraftServer.java:639) ~[paper-1.20.4.jar:git-Paper-496]
at org.bukkit.craftbukkit.v1_20_R3.CraftServer.enablePlugins(CraftServer.java:550) ~[paper-1.20.4.jar:git-Paper-496]
at net.minecraft.server.MinecraftServer.loadWorld0(MinecraftServer.java:671) ~[paper-1.20.4.jar:git-Paper-496]
at net.minecraft.server.MinecraftServer.loadLevel(MinecraftServer.java:431) ~[paper-1.20.4.jar:git-Paper-496]
at net.minecraft.server.dedicated.DedicatedServer.initServer(DedicatedServer.java:309) ~[paper-1.20.4.jar:git-Paper-496]
at net.minecraft.server.MinecraftServer.runServer(MinecraftServer.java:1131) ~[paper-1.20.4.jar:git-Paper-496]
at net.minecraft.server.MinecraftServer.lambda$spin$0(MinecraftServer.java:319) ~[paper-1.20.4.jar:git-Paper-496]
at java.lang.Thread.run(Thread.java:1583) ~[?:?]
Смотрел другие форумы на rubukkit и т.д так и не понял в чем дело, я прикрепляю и даю моей команде setExecutor но по какой то причине метод выкидывает мувик что он упирается в null, вообще ничего не понимаю. Только начинаю в этом деле и могу не знать даже самого банального, так что прошу подсказать и камнями не бросать ❤️
Вот мой код:
paper-plugin:
Код:
paper-plugin:
name: WelcomeSpawn
version: '0.0.1'
main: ruan.com.WelcomeSpawn
api-version: '1.20'
commands:
welcome-spawn:
description: MainCommand
MainClass:
Код:
package ruan.com;
import org.bukkit.plugin.java.JavaPlugin;
public final class WelcomeSpawn extends JavaPlugin {
static WelcomeSpawn plugin;
[USER=79777]@Override[/USER]
public void onEnable() {
plugin = this;
// Конфиг
getConfig().options().copyDefaults();
saveDefaultConfig();
getCommand("welcome-spawn").setExecutor(new MainCommand());
public static WelcomeSpawn getPlugin() {
return plugin;
}
}
MainCommand:
Код:
package ruan.com;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import java.util.ArrayList;
import java.util.List;
public class MainCommand implements CommandExecutor, TabCompleter {
[USER=79777]@Override[/USER]
public boolean onCommand(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings) {
Player player = (Player) commandSender;
Location location = player.getLocation();
World world = player.getWorld();
FileConfiguration config = WelcomeSpawn.getPlugin().getConfig();
if(strings[0].equals("help")) {
player.sendMessage("&7");
player.sendMessage("&7Плагин: WelcomeSpawn");;
player.sendMessage("&7");
Location test = new Location(world, 0, 0, 0);
player.teleport(test);
} else if (strings[0].equals("spawn")) {
Location tp = new Location(world, config.getDouble(".x"), config.getDouble(".y"), config.getDouble(".z"));
player.teleport(tp);
} else if (strings[0].equals("set-spawn")) {
double x = location.getX();
double y = location.getY();
double z = location.getZ();
config.set(".x", x);
config.set(".y", y);
config.set(".z", z);
WelcomeSpawn.getPlugin().reloadConfig();
} else if (strings[0].equals("reload")) {
WelcomeSpawn.getPlugin().reloadConfig();
player.sendMessage("WelcomeSpawn | Успешно перезагружен!");
} else if (strings[0].equals("jump")) {
player.teleport(player.getEyeLocation());
}
return false;
}
[USER=79777]@Override[/USER]
public @Nullable List<String> onTabComplete(@NotNull CommandSender commandSender, @NotNull Command command, @NotNull String s, @NotNull String[] strings) {
List<String> tab = new ArrayList<>();
if(strings.length == 1) {
tab.add("help");
tab.add("spawn");
tab.add("set-spawn");
tab.add("reload");
tab.add("jump");
}
return List.of();
}
}
Даже если я комментрирую else-if
tab.add("spawn");
tab.add("set-spawn");
Все равно выдает ошибку, знаю что могу использовать switch но решил по быстрому попробовать, и проблема не внутри класса.. Или внутри..
Последнее редактирование: