• Es freut uns dass du in unser Minecraft Forum gefunden hast. Hier kannst du mit über 130.000 Minecraft Fans über Minecraft diskutieren, Fragen stellen und anderen helfen. In diesem Minecraft Forum kannst du auch nach Teammitgliedern, Administratoren, Moderatoren , Supporter oder Sponsoren suchen. Gerne kannst du im Offtopic Bereich unseres Minecraft Forums auch über nicht Minecraft spezifische Themen reden. Wir hoffen dir gefällt es in unserem Minecraft Forum!

[GELÖST]NullPointer in getConfig()

Artrax

Minecrafter
Registriert
21 Februar 2015
Beiträge
21
Diamanten
0
Hey Leute, ich habe ein kleines Problem mit getConfig() in meinem Plugin.
Es wird aus einem mir nicht ersichtlichen Grund immer eine NullPointerExeption bei dem Aufruf von getConfig() in
meiner JavaPlugin Klasse geworfen. Der Code ist im Grunde leicht modifiziert aus dem bukkit Wiki herauskopiert und wird auch in einem Plugin auf dem gleichen Test Server verwendet.
Hier der Code der JavaPlugin Klasse:
Code:
package net.cmc.LobbySigns;

import java.io.File;
import java.util.logging.Logger;

import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.plugin.java.JavaPlugin;

public class LobbySignsMain extends JavaPlugin {
   public FileConfiguration config;
   Logger log;


   public void onEnable() {
     loadConfig();
     getServer().getPluginManager().registerEvents((new Signlistener(this)), this);
     log = getLogger();
     getLogger().info("LobbySigns wurde geladen");
   }

   public void onDisable() {

   }

   public void loadConfig() {
     //jetzt kommt die NullpointerExeption
     getConfig().options().copyDefaults(true);
     
     if (new File("plugins/Joinings/config.yml").exists()) {
       this.getLogger().info("config.yml geladen.");
     } else {
       saveDefaultConfig();
       this.getLogger().info("config.yml erstellt und geladen.");
     }
     saveConfig();
   }

   public FileConfiguration getConfig() {
     return config;
   }

   public Logger getLog() {
     return log;

   }

}
 

Premx_

Minecrafter
Registriert
25 Oktober 2014
Beiträge
11
Diamanten
300
Minecraft
Dr_Premx
getConfig().options().copyDefaults(true);
Brauchst du nicht.

saveDefaultConfig();
reicht.

Diese Funktion saveDefaultConfig(); kontrolliert ob bereits eine config existiert, wenn nicht erstellt es eine neue config.yml.

  1. public void onEnable() {
  2. loadConfig();
  3. saveDefaultConfig();
  4. getServer().getPluginManager().registerEvents((new Signlistener(this)), this);
  5. log = getLogger();
  6. getLogger().info("LobbySigns wurde geladen");
  7. }
loadConfig(); brauchst du nicht.
 

surin8844

Minecrafter
Registriert
10 Januar 2015
Beiträge
5
Diamanten
0
Du bekommst die NPE weil du die Methode getConfig() (in Zeile 39) aufrufst. Diese returnt dir dein FileConfiguration Objekt (in Zeile 11) welches aber kein Wert hat.

Ich frage mich sowieso wozu es deine Methode getConfig() gibt, da dies Methode ja bereits in JavaPlugin existiert. Lösche einfach mal die Methode getConfig() ab Zeile 39.
 

Artrax

Minecrafter
Registriert
21 Februar 2015
Beiträge
21
Diamanten
0
Du bekommst die NPE weil du die Methode getConfig() (in Zeile 39) aufrufst. Diese returnt dir dein FileConfiguration Objekt (in Zeile 11) welches aber kein Wert hat.

Ich frage mich sowieso wozu es deine Methode getConfig() gibt, da dies Methode ja bereits in JavaPlugin existiert. Lösche einfach mal die Methode getConfig() ab Zeile 39.
Uuuuuuuooooooh, Danke.
Toll, dieser automatische Getter Generator in Eclipse.....
 
Oben