ServerPlugin Befehl kann nicht Config Nachricht auslesen

Dieses Thema im Forum "Programmierung" wurde erstellt von Freebuilding, 8. Oktober 2013.

  1. Freebuilding
    Offline

    Freebuilding

    Registriert seit:
    2. Oktober 2012
    Beiträge:
    44
    Hallo Leute!
    Nachdem ich mein Plugin nun (fast) vervollständigt habe, möchte ich, dass die Kick-Message aus der Config ausgelesen wird.
    Aber dies gelingt mir nicht. Ich erhalte folgenden Fehlercode:

    Code (Text):
    1. 2013-10-08 22:54:03 [SEVERE] null
    2. org.bukkit.command.CommandException: Unhandled exception executing command 'wa' in plugin StarWartungsarbeiten v1.0
    3.     at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46)
    4.     at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:192)
    5.     at org.bukkit.craftbukkit.v1_6_R3.CraftServer.dispatchCommand(CraftServer.java:523)
    6.     at net.minecraft.server.v1_6_R3.PlayerConnection.handleCommand(PlayerConnection.java:959)
    7.     at net.minecraft.server.v1_6_R3.PlayerConnection.chat(PlayerConnection.java:877)
    8.     at net.minecraft.server.v1_6_R3.PlayerConnection.a(PlayerConnection.java:834)
    9.     at net.minecraft.server.v1_6_R3.Packet3Chat.handle(SourceFile:49)
    10.     at net.minecraft.server.v1_6_R3.NetworkManager.b(NetworkManager.java:296)
    11.     at net.minecraft.server.v1_6_R3.PlayerConnection.e(PlayerConnection.java:116)
    12.     at net.minecraft.server.v1_6_R3.ServerConnection.b(SourceFile:37)
    13.     at net.minecraft.server.v1_6_R3.DedicatedServerConnection.b(SourceFile:30)
    14.     at net.minecraft.server.v1_6_R3.MinecraftServer.t(MinecraftServer.java:592)
    15.     at net.minecraft.server.v1_6_R3.DedicatedServer.t(DedicatedServer.java:227)
    16.     at net.minecraft.server.v1_6_R3.MinecraftServer.s(MinecraftServer.java:488)
    17.     at net.minecraft.server.v1_6_R3.MinecraftServer.run(MinecraftServer.java:421)
    18.     at net.minecraft.server.v1_6_R3.ThreadServerApplication.run(SourceFile:583)
    19. Caused by: java.lang.IllegalArgumentException: File cannot be null
    20.     at org.apache.commons.lang.Validate.notNull(Validate.java:203)
    21.     at org.bukkit.configuration.file.YamlConfiguration.loadConfiguration(YamlConfiguration.java:170)
    22.     at org.bukkit.plugin.java.JavaPlugin.reloadConfig(JavaPlugin.java:117)
    23.     at org.bukkit.plugin.java.JavaPlugin.getConfig(JavaPlugin.java:111)
    24.     at me.riderstorm.main.main.onCommand(main.java:35)
    25.     at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44)
    26.     ... 15 more
    Joa so sieht meine Main aus:

    Code (Text):
    1.     public void onEnable() {
    2.         System.out.println("Das Plugin wurde gestartet.");
    3.           getCommand("wartungsarbeiten").setExecutor(new main());
    4.           loadConfig();
    5.        
    6.     }
    7. ....
    8. public boolean onCommand(CommandSender cs, Command cmd, String label, String[] args) {
    9. p2.kickPlayer(this.getConfig().getString("messages.annachrichterhalten"));
    10. }
    11. ....
    12.       public void loadConfig() {
    13.           FileConfiguration cfg = this.getConfig();
    14.           cfg.options().copyDefaults(true);
    15.           this.saveConfig();
    16.       }
    Und so sieht meine Config aus:

    Code (Text):
    1. messages:
    2.   annachrichterhalten: '§c§lDer Server ist nun im Wartungsarbeiten Modus.'
    Ich hoffe ihr könnt mir weiterhelfen.. Ich peil nicht wo der Fehler ist..

    LG freebuilding
     
    #1
  2. ChunkNorris
    Offline

    ChunkNorris

    Erstmal benenne deine packages/Klassen richtig und zweitens übergibst du Bukkit als CommandExecutor eine NEUE Instanz deiner Hauptklasse.
    Entweder nutzt du eine eigene Klasse die CommandExecutor implementiert (?) oder du nutzt die onCommand-Methode des Plugins.
     
    #2
  3. Freebuilding
    Offline

    Freebuilding

    Registriert seit:
    2. Oktober 2012
    Beiträge:
    44
    Danke

    Danke, das wars! Habs hingekriegt! Das gibt nen Dia ;-)
     
    #3