Error occurred while enabling Till v1.1 (Is it up to date?) java.lang.NullPointerException: null? Was ist eine NullPointerException? Wie löse ich das Problem?
Hallo ich habe einen kleinen Command geschrieben der mir ein Item gibt.
So habe ich ihn registriert:
public class Till extends JavaPlugin {
@Override
public void onEnable() {
getLogger().info("Plugin Loaded");
getCommand("test").setExecutor(new TillTestCommand());
Er hat immer gut funktioniert und auch jetzt noch.
Dann habe ich mit einen Plugin Manager einen JoinQuitListener und andere Events hinzugefügt. Sie funktionierten auch soweit.
Als ich dann ein neuen Command hinzufügte:
public class Till extends JavaPlugin {
@Override
public void onEnable() {
getLogger().info("Plugin Loaded");
getCommand("test").setExecutor(new TillTestCommand());
getCommand("adminItems").setExecutor(new AdminItemsCommands());
Funktionierte nur noch der "TillTestCommand"
Die Events funktionierten nicht mehr und auch der dazugekommene Command funktionierte nicht.
Es gab beim Start des Servers eben eine Fehlermeldung die ich gegoogelt habe aber andere Foren und Beiträge halfen mir nicht weiter.
Die ganze Meldung:
[12:40:46] [Server thread/INFO]: [Till] Loading Till v1.1
[12:40:46] [Server thread/INFO]: [Till] Enabling Till v1.1
[12:40:46] [Server thread/INFO]: [Till] Plugin Loaded
[12:40:46] [Server thread/ERROR]: Error occurred while enabling Till v1.1 (Is it up to date?)
java.lang.NullPointerException: null
at de.firstmine.till.Till.onEnable(Till.java:20) ~[?:?]
at org.bukkit.plugin.java.JavaPlugin.setEnabled(JavaPlugin.java:263) ~[spigot.jar:git-Spigot-800b93f-8160e29]
......
Ich glaube das weitere ist nicht wichtig!
Vielen Dank schonmal!
Till
2 Antworten
(Is it up to date?)
Und? Schon geprüft?
Was ist eine NullPointerException?
Wenn das Programm versucht, auf ein Objekt zuzugreifen, welches nicht existiert (also null) ist, wird so eine Exception ausgelöst.
Das könnte beispielsweise der Fall sein, wenn hier:
getCommand("adminItems").setExecutor(new AdminItemsCommands());
die Methode getCommand den Wert null zurückgibt und darüber versucht wird, auf die Methode setExecutor zuzugreifen.
Wie löse ich das Problem?
Verwerte zunächst die Informationen aus der Fehlermeldung. Dort steht bspw., dass die Exception in deiner onEnable-Methode ausgelöst wurde. Ganz genau in Zeile 20 der Till.java-Datei. Ich denke, das ist die von mir bereits benannte Zeile.
In deiner plugin.yml wiederum scheint adminItems falsch eingerückt zu sein. Daher wird vermutlich der Befehl auch nicht gefunden.
Hallo regex9,
Vielen dank für deine Hilfe tatsächlich war nur etwas falsch eingerückt in der plugin.yml ! Dadurch entstand irgendwie ein Fehler!
Du hast wahrscheinlich vergessen deinen Befehl in der plugin.yml zu hinterlegen.
Und wenn du nicht weißt was eine NullPointerException ist bzw. gar nicht weißt wie man Fehlermeldungen ließt, würde ich dir empfehlen zuert Java zu lernen