Войти или зарегистрироваться

не работает save config

artem2015

Участник
Баллы
33
Имя в Minecraft
admin
если написать код в маин классе плугина:

Код:
File confFile = new File(this.getDataFolder(), "config.yml");
                FileConfiguration conf = YamlConfiguration.loadConfiguration(confFile);
                conf.set("arena_location", arena_location.toString());
                try
                {
                  conf.save(confFile);
                 
                }
                catch (IOException e) {
                  e.printStackTrace();
                }

то всё работает

когда пытаюсь вынести запись в отдельный класс:

Код:
package game;
 
import java.io.File;
import java.io.IOException;
 
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
 
public class Save_config {
    public main plugin;
   
    public void save(String name,String value)  {
       
 
    File confFile = new File(this.plugin.getDataFolder(), "config.yml");
    FileConfiguration conf = YamlConfiguration.loadConfiguration(confFile);
    conf.set(name,value);
    try
      {
      conf.save(confFile);
       
      }
        catch (IOException e) {
          e.printStackTrace();
        }
    }
 
}

то не работает и выдаёт в лог сервера ошибку:

java.lang.NullPointerException
at game.Save_config.save(Save_config.java:15)
at game.main.Command(main.java:302)


строка в которой выдаёт ошибку:

File confFile = new File(this.plugin.getDataFolder(), "config.yml");

вызываю этот класс из майна следующим образом:

save_config.save("arena_location", arena_location.toString());

в майне плугина этот класс объявлен следующим образом:

public class main extends JavaPlugin implements Listener{

public Save_config save_config = new Save_config();

что я делаю не так?
 
При работе с баккит апи даже объект File не надо вызывать.
 
Понятным же языком написано. Значение у переменной "plugin" - null.
спасибо. заработало.

При работе с баккит апи даже объект File не надо вызывать.
просто хочется запись в файл сделать независимой от имени файла конфига.так как конфигов может быть несколько.
 
Назад
Верх