Solved Can't Figure Out Whats Wrong

Discussion in 'Plugin Development' started by FuZioN720, Mar 14, 2014.

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

    FuZioN720

    Hello, So I have been making this plugin but I have gotten an error and i can't find out what is wrong with my code I check where the error is pointing me but still can't find whats wron please help.

    Error Log:
    Code:
    [17:41:58 INFO]: [Plugin For Parthenon] Loading Plugin For Parthenon v1.0
    [17:41:58 INFO]: [Plugin For Parthenon] Enabling Plugin For Parthenon v1.0
    [17:41:58 INFO]: [Plugin For Parthenon] Trojan Wars Classes was enabled successf
    ully
    [17:41:58 ERROR]: Error occurred while enabling Plugin For Parthenon v1.0 (Is it
    up to date?)
    java.lang.NullPointerException
            at me.xxfuzion360xx.parthenon.Main.onEnable(Main.java:25) ~[?:?]
            at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:250) ~[c
    raftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader
    .java:350) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManage
    r.java:384) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at org.bukkit.craftbukkit.v1_7_R1.CraftServer.loadPlugin(CraftServer.jav
    a:298) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at org.bukkit.craftbukkit.v1_7_R1.CraftServer.enablePlugins(CraftServer.
    java:280) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at org.bukkit.craftbukkit.v1_7_R1.CraftServer.reload(CraftServer.java:63
    0) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at org.bukkit.Bukkit.reload(Bukkit.java:279) [craftbukkit.jar:git-Bukkit
    -1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:
    23) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:19
    6) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at org.bukkit.craftbukkit.v1_7_R1.CraftServer.dispatchCommand(CraftServe
    r.java:542) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at org.bukkit.craftbukkit.v1_7_R1.CraftServer.dispatchServerCommand(Craf
    tServer.java:529) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at net.minecraft.server.v1_7_R1.DedicatedServer.aw(DedicatedServer.java:
    286) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at net.minecraft.server.v1_7_R1.DedicatedServer.u(DedicatedServer.java:2
    51) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at net.minecraft.server.v1_7_R1.MinecraftServer.t(MinecraftServer.java:5
    45) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java
    :457) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
            at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:6
    17) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-3-g530fcb7-b2978jnks]
    [17:41:58 INFO]: Server permissions file permissions.yml is empty, ignoring it
    >
    Main Code:
    Code:java
    1.  
    2. package me.xxfuzion360xx.parthenon;
    3.  
    4. import java.util.logging.Logger;
    5.  
    6. import me.xxfuzion360xx.parthenon.listeners.InventoryClick;
    7. import me.xxfuzion360xx.parthenon.listeners.LobbySign;
    8. import org.bukkit.Bukkit;
    9. import org.bukkit.plugin.Plugin;
    10. import org.bukkit.plugin.java.JavaPlugin;
    11.  
    12. public class Main extends JavaPlugin {
    13.  
    14. Logger log;
    15. Plugin plugin;
    16. Config config;
    17.  
    18. public void onEnable() {
    19. plugin = this;
    20. this.log = getLogger();
    21.  
    22. this.log.info("Trojan Wars Classes was enabled successfully");
    23.  
    24. CommandManager cm = new CommandManager();
    25. cm.setup();
    26. getCommand("torjanwars").setExecutor(cm);//Line 25 Where the Error Points
    27.  
    28. config = new Config(this);
    29. config.createConfig();
    30.  
    31. Bukkit.getServer().getPluginManager().registerEvents(new InventoryClick(), this);
    32. Bukkit.getServer().getPluginManager().registerEvents(new LobbySign(), this);
    33. }
    34.  
    35. public void onDisable() {
    36. this.log.info("Trojan Wars Classes was disabled successfully");
    37. }
    38. }


    CommandManager:
    Code:java
    1. package me.xxfuzion360xx.parthenon;
    2.  
    3. import java.util.ArrayList;
    4. import java.util.Arrays;
    5.  
    6. import me.xxfuzion360xx.parthenon.cmds.Give;
    7. import me.xxfuzion360xx.parthenon.cmds.Open;
    8. import me.xxfuzion360xx.parthenon.cmds.SubCommand;
    9.  
    10. import org.bukkit.command.Command;
    11. import org.bukkit.command.CommandExecutor;
    12. import org.bukkit.command.CommandSender;
    13. import org.bukkit.entity.Player;
    14.  
    15. public class CommandManager implements CommandExecutor {
    16.  
    17. private ArrayList<SubCommand> commands = new ArrayList<SubCommand>();
    18.  
    19. public void setup() {
    20. commands.add(new Give());
    21. commands.add(new Open());
    22. }
    23.  
    24. public boolean onCommand(CommandSender sender, Command cmd, String commandLabel, String[] args) {
    25.  
    26. if (!(sender instanceof Player)) {
    27. MessageManager.getInstance().severe(sender, "Only players can use TrojanWars!");
    28. return true;
    29. }
    30.  
    31. Player p = (Player) sender;
    32.  
    33. if (cmd.getName().equalsIgnoreCase("trojanwars")) {
    34. if (args.length == 0) {
    35. for (SubCommand c : commands) {
    36. MessageManager.getInstance().info(p, "/TrojanWars " + c.name() + " (" + aliases(c) + ")" + " - " + c.info());
    37. }
    38. return true;
    39. }
    40.  
    41. SubCommand target = get(args[0]);
    42.  
    43. if (target == null) {
    44. MessageManager.getInstance().severe(p, "/TrojanWars " + args[0] + " is not a valid subcommand!");
    45. return true;
    46. }
    47.  
    48. ArrayList<String> a = new ArrayList<String>();
    49. a.addAll(Arrays.asList(args));
    50. a.remove(0);
    51. args = a.toArray(new String[a.size()]);
    52.  
    53. try {
    54. target.onCommand(p, args);
    55. }
    56.  
    57. catch (Exception e) {
    58. MessageManager.getInstance().severe(p, "An error has occured: " + e.getCause());
    59. e.printStackTrace();
    60. }
    61. }
    62.  
    63. return true;
    64. }
    65.  
    66. private String aliases(SubCommand cmd) {
    67. String fin = "";
    68.  
    69. for (String a : cmd.aliases()) {
    70. fin += a + " | ";
    71. }
    72.  
    73. return fin.substring(0, fin.lastIndexOf(" | "));
    74. }
    75.  
    76. private SubCommand get(String name) {
    77. for (SubCommand cmd : commands) {
    78. if (cmd.name().equalsIgnoreCase(name)) return cmd;
    79. for (String alias : cmd.aliases()) if (name.equalsIgnoreCase(alias)) return cmd;
    80. }
    81. return null;
    82. }
    83. }
     
  2. Offline

    codermason

    i assume you registered "trojanwars" in your plugin.yml while you're trying to register the command "torjanwars" in your code
     
  3. Offline

    FuZioN720

    codermason My Plugin.yml

    Code:
    name: Plugin For Parthenon
    version: 1.0
    main: me.xxfuzion360xx.parthenon.Main
    author: xXFuZioN360Xx
    description: Code for classes for The Parthenon Trojan War Plugin!
     
    commands:
        trojanwars:
            usage: /<command> <args> [optional args]
            aliases: [tw]
            description: TrojanWars command.
     
  4. Offline

    Arcoz

    He said what you did wrong >_>

    [​IMG] <- Your Plugin.yml

    [​IMG] <- In your code

    You're registering the command torjanwars in your code, but in your plugin.yml you're registering the trojanwars command
     
    codermason likes this.
  5. Offline

    FuZioN720

    Arcoz Wow Thanks im an idiot for not seeing that thanks. :p:oops:
     
Thread Status:
Not open for further replies.

Share This Page