Plugin Error Need Help!

Discussion in 'Plugin Development' started by Scott102, Jan 6, 2015.

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

    Scott102

    A plugin I'm working on has an error to it, and I have no idea what is wrong with line 13 and 34 in settings manager.java here are the codes:

    Code:
    package com.xxscott102xx.SK;
    
    import java.io.File;
    import java.util.Set;
    
    import org.bukkit.configuration.ConfigurationSection;
    import org.bukkit.configuration.file.FileConfiguration;
    import org.bukkit.configuration.file.YamlConfiguration;
    
    public class SettingsManager {
    
        private static final SettingsManager
                configuration = new SettingsManager("config"),
                arenas = new SettingsManager("arenas"),
                signs = new SettingsManager("signs")
        ;
    
        public static SettingsManager getConfig() {
            return configuration;
        }
    
        public static SettingsManager getArenas() {
            return arenas;
        }
    
        public static SettingsManager getSigns() {
            return signs;
        }
    
        private File file;
        private FileConfiguration config;
    
        private SettingsManager(String fileName) {
            if (!Main.getPlugin().getDataFolder().exists()) {
                Main.getPlugin().getDataFolder().mkdir();
            }
     
            file = new File(Main.getPlugin().getDataFolder(), fileName + ".yml");
     
            if (!file.exists()) {
                try {
                    file.createNewFile();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
     
            config = YamlConfiguration.loadConfiguration(file);
        }
    
        @SuppressWarnings("unchecked")
        public <T> T get(String path) {
            return (T) config.get(path);
        }
    
        public Set<String> getKeys() {
            return config.getKeys(false);
        }
    
        public void set(String path, Object value) {
            config.set(path, value);
            save();
        }
    
        public boolean contains(String path) {
            return config.contains(path);
        }
    
        public ConfigurationSection createSection(String path) {
            ConfigurationSection section = config.createSection(path);
            save();
            return section;
        }
    
        public void save() {
            try {
                config.save(file);
            }
     
            catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    
    
    
    code: Error Log. Name Of Plugin: Silentkiller
    
    
    
    [11:17:37] [Server thread/INFO]: [SilentKiller] Enabling SilentKiller v1.0
    [11:17:37] [Server thread/ERROR]: Error occurred while enabling SilentKiller v1.0 (Is it up to date?)
    java.lang.ExceptionInInitializerError
        at com.xxscott102xx.SK.ArenaManager.setup(ArenaManager.java:24) ~[?:?]
        at com.xxscott102xx.SK.Main.onEnable(Main.java:23) ~[?:?]
        at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:316) ~[CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
        at org.bukkit.plugin.java.JavaPluginLoader.enablePlugin(JavaPluginLoader.java:324) [CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
        at org.bukkit.plugin.SimplePluginManager.enablePlugin(SimplePluginManager.java:404) [CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.loadPlugin(CraftServer.java:446) [CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
        at org.bukkit.craftbukkit.v1_7_R3.CraftServer.enablePlugins(CraftServer.java:380) [CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
        at net.minecraft.server.v1_7_R3.MinecraftServer.n(MinecraftServer.java:352) [CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
        at net.minecraft.server.v1_7_R3.MinecraftServer.g(MinecraftServer.java:326) [CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
        at net.minecraft.server.v1_7_R3.MinecraftServer.a(MinecraftServer.java:282) [CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
        at net.minecraft.server.v1_7_R3.DedicatedServer.init(DedicatedServer.java:182) [CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
        at net.minecraft.server.v1_7_R3.MinecraftServer.run(MinecraftServer.java:436) [CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
        at net.minecraft.server.v1_7_R3.ThreadServerApplication.run(SourceFile:628) [CB.jar:git-Bukkit-1.7.9-R0.1-10-g8688bd4-b3092jnks]
    Caused by: java.lang.NullPointerException
        at com.xxscott102xx.SK.SettingsManager.<init>(SettingsManager.java:34) ~[?:?]
        at com.xxscott102xx.SK.SettingsManager.<clinit>(SettingsManager.java:13) ~[?:?]
        ... 13 more
    [11:17:37] [Server thread/INFO]: Server permissions file permissions.yml is empty, ignoring it
    [11:17:37] [Server thread/INFO]: Done (1.594s)! For help, type "help" or "?"
     
    Last edited: Jan 6, 2015
  2. Offline

    SuperOriginal

    Line 13 block is a failed attempt at copy and paste... And why are you trying to make a private constructor?
     
  3. Offline

    Scott102

    Oh hmm, but do you know how to fix it though?
     
  4. Offline

    SuperOriginal

    That class is set up so weirdly I'm not even sure what to tell you.

    Weird syntax, assigning values to variables that haven't been defined...
    I would recommend understanding PogoStick29's settings manager and it's java concepts before you try to copy paste.
     
  5. Offline

    Scott102

    Oh hmm do you have a solution?
     
  6. Offline

    mythbusterma

    SuperOriginal likes this.
Thread Status:
Not open for further replies.

Share This Page