Solved NullPointerExceptoin...

Discussion in 'Plugin Development' started by xYourFreindx, Jun 9, 2014.

Thread Status:
Not open for further replies.
  1. So, I was doing some class reconfiguration on my laptop.
    Getting myself set up to redo, and optimize most of my code.
    Anyways...​
    I compile everything, and upload it to my server to test it out and make sure everything runs the same...
    But I get this.​
    Code:
    [Server thread/ERROR]: Could not load 'plugins\CameraMode.jar' in folder 'plugins'
    org.bukkit.plugin.InvalidPluginException: java.lang.NullPointerException
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:131) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:328) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:251) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.loadPlugins(CraftServer.java:357) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.<init>(CraftServer.java:319) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        at net.minecraft.server.v1_7_R3.PlayerList.<init>(PlayerList.java:68) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        at net.minecraft.server.v1_7_R3.DedicatedPlayerList.<init>(SourceFile:14) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        at net.minecraft.server.v1_7_R3.DedicatedServer.init(DedicatedServer.java:126) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:436) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) [craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
    Caused by: java.lang.NullPointerException
        at com.gmail.justisroot.cameramode.CameraMode.<init>(CameraMode.java:41) ~[?:?]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.7.0_51]
        at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.7.0_51]
        at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) ~[?:1.7.0_51]
        at java.lang.reflect.Constructor.newInstance(Unknown Source) ~[?:1.7.0_51]
        at java.lang.Class.newInstance(Unknown Source) ~[?:1.7.0_51]
        at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:52) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:127) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.3-68-g8f0832a-b3080jnks]
        ... 9 more
    I have no idea what could be causing this.
    The only things I changed, was that I split up my main class into three different classes, because it was so large. As well as altering how the updater type is determined.

    The stackTrace suggests that the problem is coming from my main class.
    So here it is.
    Let me know if you spot anything out of place that I'm overlooking. ​
    Code:java
    1. package com.gmail.justisroot.cameramode;
    2.  
    3. import java.util.ArrayList;
    4. import java.util.HashMap;
    5. import java.util.List;
    6.  
    7. import org.bukkit.Location;
    8. import org.bukkit.entity.Entity;
    9. import org.bukkit.entity.Player;
    10. import org.bukkit.plugin.PluginDescriptionFile;
    11. import org.bukkit.plugin.java.JavaPlugin;
    12. import org.bukkit.potion.PotionEffect;
    13. import org.bukkit.util.Vector;
    14.  
    15. import com.gmail.justisroot.cameramode.Updater.UpdateType;
    16.  
    17. public class CameraMode extends JavaPlugin {
    18.  
    19. //##########################//
    20. //######- Data Store -######//
    21. //##########################//
    22.  
    23. public ArrayList<String> flyplayers = new ArrayList<String>();
    24. public HashMap<String, Integer> fireticks = new HashMap<String, Integer>();
    25. public HashMap<String, Integer> breath = new HashMap<String, Integer>();
    26. public ArrayList<String> pause = new ArrayList<String>();
    27. public List<String> allowedcmds = getConfig().getStringList("CameraMode.PlayersInCM.AllowedCommands");
    28. public HashMap<String, Location> locations = new HashMap<String, Location>();
    29. public ArrayList<String> tre = new ArrayList<String>();
    30. public HashMap<String, List<PotionEffect>> effects = new HashMap<String, List<PotionEffect>>();
    31. public HashMap<String, Vector> vel = new HashMap<String, Vector>();
    32. public HashMap<String, Entity> mobs = new HashMap<String, Entity>();
    33. public ArrayList<String> pvpTimer = new ArrayList<String>();
    34.  
    35. //###### - Objects - ######//
    36.  
    37. Player playerr;
    38. String reason = "You are in CameraMode!";
    39. Updater updater;
    40. Events event;
    41. Entity putMobs = mobs.put(playerr.getUniqueId().toString(), (Entity) playerr.getNearbyEntities(15, 15, 15));
    42. Entity getMobs = mobs.get(playerr.getUniqueId().toString());
    43. UpdateType biff = (getConfig().getBoolean("CameraMode.Updates.AutoUpdate")) ? Updater.UpdateType.DEFAULT : Updater.UpdateType.NO_DOWNLOAD;
    44.  
    45. //############################//
    46. //#########- Start - #########//
    47. //############################//
    48.  
    49. @Override
    50. public void onEnable() {
    51. getConfig().options().copyHeader(true);
    52. getConfig().options().copyDefaults(true);
    53. saveConfig();
    54. if (getConfig().getBoolean("CameraMode.Enabled") == false) {
    55. getLogger().info("Plugin Disable Setting Detected...");
    56. getServer().getPluginManager().disablePlugin(this);
    57. }
    58. getServer().getPluginManager().registerEvents(event, this);
    59. PluginDescriptionFile pdfFile = this.getDescription();
    60. getLogger().info(pdfFile.getName() + " v" + pdfFile.getVersion() + " has been enabled");
    61. @SuppressWarnings("unused")
    62. Updater updater = new Updater(this, 80542, getFile(), biff, true);
    63. }
    64. @Override
    65. public void onDisable(){
    66. reloadConfig();
    67. PluginDescriptionFile pdfFile = this.getDescription();
    68. getLogger().info(pdfFile.getName() + " v" + pdfFile.getVersion() + " has been disabled");
    69. }
    70.  
    71. //#############################//
    72. //########- Booleans -#########//
    73. //#############################//
    74.  
    75. public boolean commandIsWhitelisted(String playerCmd) {
    76. playerCmd = playerCmd.replace("/", "");
    77. for(String allowedCmd : this.allowedcmds) {
    78. allowedCmd = allowedCmd.replace("/", "");
    79. if(playerCmd.startsWith(allowedCmd)) return true;
    80. }
    81. return false;
    82. }
    83. }
     
  2. Offline

    spy_1134

    at com.gmail.justisroot.cameramode.CameraMode.<init>(CameraMode.java:41) ~[?:?]
    This tells you that line 41 in CameraMode.java is at fault.

    Code:Java
    1. Entity putMobs = mobs.put(playerr.getUniqueId().toString(), (Entity) playerr.getNearbyEntities(15, 15, 15));


    You are trying to run code outside of a method first off, which is bad.
    Second, at this point in the code, playerr has never been initialized, just declared. This is probably why you are getting the error.
     
    xYourFreindx likes this.
Thread Status:
Not open for further replies.

Share This Page