SettingsManger Help

Discussion in 'Plugin Development' started by RoboticPlayer, Sep 15, 2015.

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

    RoboticPlayer

    I am getting an error while loading my crates plugin. Here is the stacktrace:
    Error (open)

    Could not load 'plugins\SuperCrates.jar' in folder 'plugins'
    org.bukkit.plugin.InvalidPluginException: java.lang.ExceptionInInitializerError
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:135) ~[spigot-1.8.8.jar:git-Spigot-d97e08b-880a532]
    at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:329) ~[spigot-1.8.8.jar:git-Spigot-d97e08b-880a532]
    at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:251) [spigot-1.8.8.jar:git-Spigot-d97e08b-880a532]
    at org.bukkit.craftbukkit.v1_8_R3.CraftServer.loadPlugins(CraftServer.java:292) [spigot-1.8.8.jar:git-Spigot-d97e08b-880a532]
    at net.minecraft.server.v1_8_R3.DedicatedServer.init(DedicatedServer.java:198) [spigot-1.8.8.jar:git-Spigot-d97e08b-880a532]
    at net.minecraft.server.v1_8_R3.MinecraftServer.run(MinecraftServer.java:524) [spigot-1.8.8.jar:git-Spigot-d97e08b-880a532]
    at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]
    Caused by: java.lang.ExceptionInInitializerError
    at me.roboticplayer.supercrates.SuperCrates.<init>(SuperCrates.java:12) ~[?:?]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.7.0_79]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) ~[?:1.7.0_79]
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.7.0_79]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526) ~[?:1.7.0_79]
    at java.lang.Class.newInstance(Class.java:379) ~[?:1.7.0_79]
    at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:76) ~[spigot-1.8.8.jar:git-Spigot-d97e08b-880a532]
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:131) ~[spigot-1.8.8.jar:git-Spigot-d97e08b-880a532]
    ... 6 more
    Caused by: java.lang.NullPointerException
    at me.roboticplayer.supercrates.SettingsManager.<init>(SettingsManager.java:66) ~[?:?]
    at me.roboticplayer.supercrates.SettingsManager.<clinit>(SettingsManager.java:18) ~[?:?]
    at me.roboticplayer.supercrates.SuperCrates.<init>(SuperCrates.java:12) ~[?:?]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) ~[?:1.7.0_79]
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57) ~[?:1.7.0_79]
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.7.0_79]
    at java.lang.reflect.Constructor.newInstance(Constructor.java:526) ~[?:1.7.0_79]
    at java.lang.Class.newInstance(Class.java:379) ~[?:1.7.0_79]
    at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:76) ~[spigot-1.8.8.jar:git-Spigot-d97e08b-880a532]
    at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:131) ~[spigot-1.8.8.jar:git-Spigot-d97e08b-880a532]
    ... 6 more
    [20:55:53]

    SuperCrates Line 12:
    Code:
    SettingsManager settings = SettingsManager.getInstance();
    SettingsManager Line 18:
    Code:
    static SettingsManager instance = new SettingsManager();
    SettingsManager Line 66:
    Code:
    Logger log = p.getLogger();
    In line 66, "p" is referring to this:
    Code:
    Plugin p;
    I am trying to use a settings manager so that I can better manage my files (currently I have a config.yml and a crates.yml). Any help?
     
  2. Offline

    Gater12

  3. Offline

    RoboticPlayer

    @Gater12 Ok, how would I handle it if p is null? i.e, what should I do?
     
  4. Offline

    mythbusterma

    @henderry2019

    Actually create a constructor for the class and don't use static initialization.

    It's really that simple.
     
  5. Offline

    RoboticPlayer

    @mythbusterma
    So would I be creating a constructor for the SettingsManager class in my SuperCrates or vice versa? Also, how would I go about creating a constructor? I've never actually used one. Could you provide an example or show me somewhere that provides an example?
     
    Last edited: Sep 16, 2015
  6. Offline

    RainoBoy97

    Every time you're instantiating a class you are invoking a constructor.
     
  7. Offline

    RoboticPlayer

    @RainoBoy97 @mythbusterma I've never used something like this before. How would I invoke a constructor properly, and what do you mean by when I instantiate a class?
     
  8. Offline

    teej107

    @henderry2019 It means that you need to go back to learning more about Java :p Writing Bukkit plugins should come second. This is a forum about Bukkit and not Java.
     
  9. Offline

    RainoBoy97

Thread Status:
Not open for further replies.

Share This Page