• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

Wenn ich den Command ausführe reagiert nix

abcabc

Redstoneengineer
Registriert
2 Mai 2018
Beiträge
35
Diamanten
250
Hallo ich will ein Arena Plugin programmieren und hab schon den Befehl ein bisschen programmiert als ich das Plugin
Testen wurde nur das systemprintount in der onEnable Methode aus geführt der Command wird nicht ausgefuehrt bitte nicht mich
haten weil ich viele Rechtschreibfehler mache und noch nicht so gut programmieren kann.
Code:
package me.nicitoni.main;

import java.io.File;
import java.io.IOException;

import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;

public class Command extends JavaPlugin {

    @SuppressWarnings("unused")
    public void onEnable() {
        File cfg = new File(this.getDataFolder(), "arenna.yml");
        YamlConfiguration config = YamlConfiguration.loadConfiguration(cfg);

    }

    public void onDisable() {

    }
    File cfg = new File(this.getDataFolder(), "chatlog.yml");
    YamlConfiguration config = YamlConfiguration.loadConfiguration(cfg);
    public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
        Player p = (Player) sender;
        if (cmd.getName().equalsIgnoreCase("oneoone")) {
            if(sender instanceof Player) {
                if(p.hasPermission("nici.arena")) {
                    if(args[0].equalsIgnoreCase("spawneins")) {
                        config.set("Arena.Location.spawneins.X", ((Player) sender).getLocation().getX());
                        config.set("Arena.Location.spawneins.Y", ((Player) sender).getLocation().getY());
                        config.set("Arena.Location.spawneins.Z", ((Player) sender).getLocation().getZ());
                        config.set("Arena.Location.spawneins.World", ((Player) sender).getLocation().getWorld());
                        sender.sendMessage("§aDer erste Spawn wurde gesetzt");
                        System.out.println("Der Spieler" + p.getDisplayName() + "hat den SpawnEins an die Koordinaten" + p.getLocation() + "umgesetzt.");
                        try{ config.save(cfg); } catch (IOException e) { e.printStackTrace(); }
                    }else if(args[0].equalsIgnoreCase("spawnzwei")) {
                        config.set("Arena.Location.spawnzwei.X", ((Player) sender).getLocation().getX());
                        config.set("Arena.Location.spawnzwei.Y", ((Player) sender).getLocation().getY());
                        config.set("Arena.Location.spawnzwei.Z", ((Player) sender).getLocation().getZ());
                        config.set("Arena.Location.spawnwei.World", ((Player) sender).getLocation().getWorld());
                        sender.sendMessage("§aDer zweite Spawn wurde gesetzt");
                        try{ config.save(cfg); } catch (IOException e) { e.printStackTrace(); }
                    }

                }
            }else {
                System.out.println("Das kann nur ein Spieler ausfuehren");
            }
                
        }
        return true;
    }

}
Code:
name: OneOOne
version: 1.0
main: me.nicitoni.main.Command
commands:
     oneoone:
Code:
[]=====[Enabling AdvancedBan]=====[]
| Information:
|   Name: AdvancedBan
|   Developer: Leoko
|   Version: 2.1.5-RELEASE
|   Storage: HSQLDB (local)
| Support:
|   Skype: Leoko33
|   Mail: Leoko4433@gmail.com
|   Github: https://github.com/DevLeoko/AdvancedBan/issues
|   Discord: https://discord.gg/ycDG6rS
| Update:
|   There is a new version available! [2.1.5]
[]================================[]

[12:14:05 INFO]: [OneOOne] Enabling OneOOne v1.0
[12:14:05 INFO]: Server permissions file permissions.yml is empty, ignoring it
[12:14:05 INFO]: CONSOLE: Reload complete.
 

Chrisliebär❤️

nur echt mit ❤️
Moderator
Registriert
19 Mai 2014
Beiträge
1.675
Diamanten
830
Kenn mich mit der onCommand Methode in der Pluginklasse nicht genug aus um dir sagen zu können wo der Fehler ist. Aber ich kann dir ein paar andere Dinge verraten, die dir vermutlich helfen:

  • Hör auf Warnings zu ignorieren. Du benutzt da @SuppressWarnings("unused") ohne vermutlich überhaupt zu wissen was es tut. Lösch es und benutzt es nie wieder wenn du nicht die Warnung verstehst, die du bekommst, denn hättest du darauf geachtet, wäre dir der Fehler in Zeile 23 und 24 nicht passiert, denn die Variablen, die du da definierst sind nicht in der Methode sondern in der ganzen Klasse.
  • Guck dir an was die @Override Annotation macht. Am besten Google fragen und sie dann immer verwenden. Ich vermute du verwendest Eclipse, ich glaube das sollte dir auch die fehlende @Override Annotation bei der onCommand Methode ankreiden.
  • Benutzt eine CommandExecutor Klasse (https://hub.spigotmc.org/javadocs/spigot/org/bukkit/command/CommandExecutor.html) und nicht die onCommand Methode, die benutzt niemand. Google findet dazu in fast jeder Sprache Beispielcode.
 

abcabc

Redstoneengineer
Registriert
2 Mai 2018
Beiträge
35
Diamanten
250
So ich hab nun den nächsten Fehler wenn ich den Command eingebe bekomme ich nur eine rote Msg
Code:
package me.nicitoni.main;

import java.io.IOException;

import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandExecutor;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.event.Listener;

public class Echt implements CommandExecutor {
    
    @Override
    public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
        FileConfiguration config = Main.getPlugin().getConfig();
        Player p = (Player) sender;
        if(sender instanceof Player) {
            if(p.hasPermission("nici.arena")) {
                if(args[0].equalsIgnoreCase("spawneins")) {
                    config.set("Arena.Location.spawneins.X", ((Player) sender).getLocation().getX());
                    config.set("Arena.Location.spawneins.Y", ((Player) sender).getLocation().getY());
                    config.set("Arena.Location.spawneins.Z", ((Player) sender).getLocation().getZ());
                    config.set("Arena.Location.spawneins.World", ((Player) sender).getLocation().getWorld());
                    sender.sendMessage("§aDer erste Spawn wurde gesetzt");
                    System.out.println("Der Spieler" + p.getDisplayName() + "hat den SpawnEins an die Koordinaten" + p.getLocation() + "umgesetzt.");
                    Main.getPlugin().saveConfig();
                }else if(args[0].equalsIgnoreCase("spawnzwei")) {
                    config.set("Arena.Location.spawnzwei.X", ((Player) sender).getLocation().getX());
                    config.set("Arena.Location.spawnzwei.Y", ((Player) sender).getLocation().getY());
                    config.set("Arena.Location.spawnzwei.Z", ((Player) sender).getLocation().getZ());
                    config.set("Arena.Location.spawnwei.World", ((Player) sender).getLocation().getWorld());
                    Main.getPlugin().configi.set("lol", "lol");
                    sender.sendMessage("§aDer zweite Spawn wurde gesetzt");
                    Main.getPlugin().saveConfig();
                }

            }else
                sender.sendMessage("och ne");
            
        }else
            System.out.println("Das kann nur ein Spieler ausfuehren");
                
        
        return false;
    }


}
Code:
package me.nicitoni.main;

import java.io.File;
import java.io.IOException;
[CODE="|plugin.yml"]name: OneOOne
version: 1.0
main: me.nicitoni.main.Command
commands:
     oneoone:

import org.bukkit.command.CommandSender;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
import org.bukkit.plugin.java.JavaPlugin;

public class Main extends JavaPlugin {
private static Main plugin;

public void onEnable() {
getCommand("oneoone").setExecutor(new Echt());

}

public void onDisable() {

}
public static Main getPlugin() {
return plugin;
}

}[/CODE]
 

abcabc

Redstoneengineer
Registriert
2 Mai 2018
Beiträge
35
Diamanten
250
Error COde
Code:
[16:13:20 INFO]: NiciToni issued server command: /oneoone spawneins
[16:13:20 ERROR]: null
org.bukkit.command.CommandException: Unhandled exception executing command 'oneoone' in plugin OneOOne v1.0
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) ~[1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at org.bukkit.craftbukkit.v1_8_R3.CraftServer.dispatchCommand(CraftServer.java:641) ~[1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.PlayerConnection.handleCommand(PlayerConnection.java:1162) [1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.PlayerConnection.a(PlayerConnection.java:997) [1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:45) [1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.PacketPlayInChat.a(PacketPlayInChat.java:1) [1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.PlayerConnectionUtils$1.run(SourceFile:13) [1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) [?:1.8.0_171]
        at java.util.concurrent.FutureTask.run(Unknown Source) [?:1.8.0_171]
        at net.minecraft.server.v1_8_R3.SystemUtils.a(SourceFile:44) [1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.B(MinecraftServer.java:715) [1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.DedicatedServer.B(DedicatedServer.java:374) [1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.A(MinecraftServer.java:654) [1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:557) [1.8.8.jar:git-Spigot-db6de12-18fbb24]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_171]
Caused by: java.lang.NullPointerException
        at me.nicitoni.main.Echt.onCommand(Echt.java:17) ~[?:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[1.8.8.jar:git-Spigot-db6de12-18fbb24]
        ... 15 more
 
D

deleted202832

Guest
Ich kann dir nur ans Herz legen die Grundkenntnisse zu lernen und zu verstehen.
Bevor du wegen jeder Kleinigkeit einen Beitrag erstellst schau doch mal genau über den Code und schau Schritt für Schritt was du machst und was fehlen könnte.

Code:
private static Main plugin;

public void onEnable() {
getCommand("oneoone").setExecutor(new Echt());

}

public static Main getPlugin() {
return plugin;
}

Vlt findest du jetzt den Fehler
 
Oben