registerCommands(); Error

Discussion in 'Plugin Development' started by deleted_91027365, Mar 5, 2015.

Thread Status:
Not open for further replies.
  1. Hey,

    When I start my Server this Error comes:

    Code:
    [15:44:51 INFO]: [gadgets] Enabling gadgets v1.0
    [15:44:51 ERROR]: Error occurred while enabling gadgets v1.0 (Is it up to date?)
    java.lang.NullPointerException
            at de.dunklestoast.gadgets.Main.registerCommands(Main.java:36) ~[?:?]
            at de.dunklestoast.gadgets.Main.onEnable(Main.java:19) ~[?:?]
            at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:316) ~[craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:332) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:417) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at org.bukkit.craftbukkit.v1_7_R4.CraftServer.loadPlugin(CraftServer.java:476) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at org.bukkit.craftbukkit.v1_7_R4.CraftServer.enablePlugins(CraftServer.java:394) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at org.bukkit.craftbukkit.v1_7_R4.CraftServer.reload(CraftServer.java:866) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at org.bukkit.Bukkit.reload(Bukkit.java:301) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:23) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:181) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at org.bukkit.craftbukkit.v1_7_R4.CraftServer.dispatchCommand(CraftServer.java:767) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at org.bukkit.craftbukkit.v1_7_R4.CraftServer.dispatchServerCommand(CraftServer.java:753) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at net.minecraft.server.v1_7_R4.DedicatedServer.aB(DedicatedServer.java:326) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:290) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
            at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [craftbukkit.jar:git-Spigot-1.7.9-R0.2-204-g534549b]
    So,

    These are the 2 classes:

    Main.java (open)
    Code:
    package de.dunklestoast.gadgets;
    
    import org.bukkit.ChatColor;
    import org.bukkit.event.Listener;
    import org.bukkit.plugin.java.JavaPlugin;
    
    import de.dunklestoast.gadgets.CommandWilli;
    import de.dunklestoast.gadgets.CommandTeleport;
    
    public class Main extends JavaPlugin implements Listener{
       
       
        public static String prefix = ChatColor.translateAlternateColorCodes('&', "&7[&agGadgets&7] &f");
        public static String prefcmd = ("[Gadgets]");
    
       
        @Override
        public void onEnable() {
            registerCommands();
           
            this.getServer().getPluginManager().registerEvents(this, this);
            System.out.println(Main.prefcmd + " Started...");
           
        }
       
    
        public void onDisable() {
            System.out.println(Main.prefcmd + " Stopped...");
        }
       
    
       
       
       
       
        public void registerCommands() {
        getCommand("teleport").setExecutor(new CommandTeleport(this));
       
       
        CommandWilli Willi = new CommandWilli(this);
        getCommand("willi").setExecutor(Willi);
        }
    }
    



    and

    CommandWilli.java (open)
    Code:
    package de.dunklestoast.gadgets;
    
    import org.bukkit.ChatColor;
    import org.bukkit.Location;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandExecutor;
    import org.bukkit.command.CommandSender;
    import org.bukkit.entity.CreatureType;
    import org.bukkit.entity.Creeper;
    import org.bukkit.entity.Player;
    
    @SuppressWarnings("deprecation")
    public class CommandWilli implements CommandExecutor {
    
        @SuppressWarnings("unused")
        private Main plugin;
    
        public CommandWilli(Main main) {
            this.plugin = main;
        }
    
        @SuppressWarnings({})
        @Override
        public boolean onCommand(CommandSender sender, Command cmd, String label, String[] args) {
                Player p = (Player) sender;
                Location loc = p.getLocation();
                Creeper creeper = (Creeper) p.getWorld().spawnCreature(loc, CreatureType.CREEPER);
                creeper.setCustomName(ChatColor.GOLD + "Willi");
                creeper.setCustomNameVisible(true);
                creeper.setPowered(true);
                //creeper.shootArrow();
           
       
            return true;
    
       
       
       
        }
       
        }
       
    


    Where is the Mistake?
     
  2. Error : "at de.dunklestoast.gadgets.Main.registerCommands(Main.java:36) ~[?:?]"
    Try with this :
    Code:java
    1.  
    2. @Override
    3. public void onEnable() {
    4. getCommand("teleport").setExecutor(new CommandTeleport(this));
    5. getCommand("willi").setExecutor(new CommandWilli(this));
    6. }
    7.  
     
  3. Offline

    mine-care

    @MaTaMoR_ what you have there is just the commands taken out of the secondary method into onEnable method, this wont do any changes as far as the error is concerned. Instead OP probably hasn't registered the commands in plugin.yml properly so the NPE is thrown.
    EDIT: please avoid spoon feeding people. It doesn't help the just to copy paste code without having the intrest of reading it and understanding it. Thanks.
     
  4. "Spoon feeding" hahaha, shot ....
    CommandWilli Willi = new CommandWilli(this);
     
  5. Offline

    pie_flavor

    @dunklesToast Your original code should work provided you register the commands in plugin.yml
     
  6. Offline

    mine-care

    @MaTaMoR_
    :p
    ??? how does that affect the code? it is practically the same as creating the obj in the method parameters.
     
Thread Status:
Not open for further replies.

Share This Page