다른 방법을 사용하려고하면 여전히 생성자나는 생성자의 내부 변수를 초기화,하지만 난 그래서 여기
private ActionbarTitleObject timer = TitleFactory.newBarTitle("");
private Plugin plugin;
HashMap<String, Parkour> parkours = null;
public MineJump() {}
public MineJump(ArrayList<Player> players, String configPath, Plugin plugin)
{
super(players);
this.plugin = plugin;
parkours = Parkour.load(configPath, players);
System.out.println(parkours.get("p1").getCurrentSpawn()); //here I get the right value
}
는 null입니다하지만 난이 방법에 parkours에게 해시 맵을 사용하려고 할 때
@EventHandler
public void onPlayerMove(PlayerMoveEvent e)
{
System.out.println(parkours.get("p1").getCurrentSpawn()); //parkours is null here :(
}
NullPointerException이 발생합니다. 왜 그런가요?
나는 단지 이것에 비 인수 생성자를 사용 :Bukkit.getPluginManager().registerEvents(new MineJump(), this);
오류의 원인이 수? 그렇다면 왜 나에게 설명 할 수 있다면 좋을 것입니다. :)
당신이에 대한 자세한 정보를 제공 할 수 있을까요? –
인수가없는 생성자를 사용 했습니까? 이 null 포인터를 설명합니다. – wtfzn
디버거를 사용하십시오. 그리고 당신이 어딘가에서 예외를 삼키는 지 확인하십시오. – Fildor