Solved Long JavaException Error with getCommand and setExecutor

Discussion in 'Plugin Development' started by YellowKamel, Apr 1, 2014.

Thread Status:
Not open for further replies.
  1. Offline

    YellowKamel

    Im very new to Bukkit Programming and i have a problem: I use a class that should contain my /kit command. But whenever I try to use it on my server I get this:

    [Server thread/ERROR]: Error occurred while enabling YellowCombat v0.2 (Is it up to date?)
    java.lang.IllegalArgumentException: Plugin already initialized!
    at org.bukkit.plugin.java.PluginClassLoader.initialize(PluginClassLoader.java:98) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at org.bukkit.plugin.java.JavaPlugin.<init>(JavaPlugin.java:59) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at commands.CommandKits.<init>(CommandKits.java:12) ~[?:?]
    at main.YellowCombat.onEnable(YellowCombat.java:13) ~[?:?]
    at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:250) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:350) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:389) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at org.bukkit.craftbukkit.v1_7_R1.CraftServer.loadPlugin(CraftServer.java:439) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at org.bukkit.craftbukkit.v1_7_R1.CraftServer.enablePlugins(CraftServer.java:375) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.MinecraftServer.m(MinecraftServer.java:342) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.MinecraftServer.g(MinecraftServer.java:319) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.MinecraftServer.a(MinecraftServer.java:275) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.DedicatedServer.init(DedicatedServer.java:175) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java:424) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:617) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-b3020jnks]
    [...]

    And this is only the half of the Error.

    My Code is as follows.

    Code:java
    1. package main;
    2.  
    3. import org.bukkit.plugin.java.JavaPlugin;
    4.  
    5. import commands.CommandKits;
    6.  
    7. public class YellowCombat extends JavaPlugin {
    8.  
    9. public void onEnable() {
    10.  
    11. System.out.println("[YellowCombat] Ready!");
    12.  
    13. getCommand("kit").setExecutor(new CommandKits());
    14.  
    15.  
    16.  
    17. }
    18.  
    19. public void onDisable() {
    20.  
    21. System.out.println("[YellowCombat] Disabled!");
    22.  
    23. }
    24.  
    25.  
    26.  
    27.  
    28. }


    and:

    Code:java
    1. package commands;
    2.  
    3.  
    4. import org.bukkit.ChatColor;
    5. import org.bukkit.Material;
    6. import org.bukkit.command.Command;
    7. import org.bukkit.command.CommandSender;
    8. import org.bukkit.entity.Player;
    9. import org.bukkit.inventory.ItemStack;
    10. import org.bukkit.plugin.java.JavaPlugin;
    11.  
    12. public class CommandKits extends JavaPlugin {
    13.  
    14. public boolean onCommand(CommandSender sender, Command cmd, String Label, String[] args) {
    15.  
    16. Player p = null;
    17.  
    18. //Umwandlung Sender -> Player
    19. if (sender instanceof Player) {
    20. p = (Player)sender;
    21. }
    22.  
    23. if (p != null) {
    24. if (p.hasPermission("YellowCombat.Kits")) {
    25. //Items
    26. p.getInventory().addItem(new ItemStack[] { new ItemStack(Material.WOOD_SWORD, 1) });
    27. p.getInventory().addItem(new ItemStack[] { new ItemStack(Material.BOW, 1) });
    28. p.getInventory().addItem(new ItemStack[] { new ItemStack(Material.ARROW, 32) });
    29.  
    30. //RĂ¼stung
    31. p.getInventory().setChestplate(new ItemStack(Material.IRON_CHESTPLATE));
    32. p.getInventory().setLeggings(new ItemStack(Material.LEATHER_LEGGINGS));
    33. p.getInventory().setBoots(new ItemStack(Material.LEATHER_BOOTS));
    34. }
    35. else {
    36. p.sendMessage(ChatColor.GRAY + "[" + ChatColor.BLUE + "YellowCombat" + ChatColor.GRAY + "] " +
    37. ChatColor.RED + "You dont have enough Permissions..." + ChatColor.RESET);
    38. }
    39.  
    40. }
    41. else {
    42. System.out.println("[YellowCombat] This command can only be run by players!");
    43. }
    44.  
    45. return false;
    46.  
    47. }
    48.  
    49. }


    Can anyone help me please.... :'(
     
  2. Offline

    Mmarz11

    YellowKamel public class CommandKits extends JavaPlugin {

    should be

    public class CommandKits implements CommandExecutor {
     
  3. Offline

    YellowKamel

    The problem is solved. The solution is:

    public class CommandKits implements CommandExecutor {

    instead of

    public class CommandKits extends JavaPlugin {

    Thanks to Mmarz11 and also to Zer0Zockt for this solution.
     
Thread Status:
Not open for further replies.

Share This Page