Мне нужно заносить ник игрока(или uuid) в качестве ключа, а локацию в качестве значения в json файл. Первое что пришло мне на ум это хеш таблица, но плагин при выполнении команды выдает ошибку. Объясните что я делаю не так
.
Java:
private static Location location = new Location(Bukkit.getWorld("world"), 12, 12, 12, 0, 0);
private Map<Player, Location> map = new HashMap<>();
private static FirstPlugin plugin;
public spawn1(FirstPlugin plugin) {
this.plugin = plugin;
}
@Override
public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
Player player = (Player) sender;
if(sender instanceof Player) {
try {
saveJson();
} catch (IOException e) {
e.printStackTrace();
}
}
return true;
}
public void saveJson() throws IOException {
Gson gson = new Gson();
// Создаем файл *.json
File file = new File(plugin.getDataFolder().getAbsoluteFile() +"/data.json");
file.getParentFile().mkdir();
file.createNewFile();
Writer writer = new FileWriter(file, false);
gson.toJson(map, writer);
writer.flush();
writer.close();
System.out.println("Player Saved");
}