Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Вылетает ошибка в консоле

Dadruid

Новичок
Баллы
6
При запуске сервера в консоле вылетает огромная ошибка:
PQiFqe1.png

Как я понял ругается на JoinListener иEnableClass:
EnableClass
Код:
public class EnableClass extends JavaPlugin{
    JoinListener join = new JoinListener();
  
    @Override
    public void onEnable(){
        Bukkit.getPluginManager().registerEvents(join, this);
    }
}
JoinListener
Код:
public class JoinListener implements Listener{
    EnableClass enable = new EnableClass();
    FileConfiguration conf = enable.getConfig();
    BookOfClasses Book = new BookOfClasses();
  
    @EventHandler
    public void onJoin(PlayerJoinEvent e){
        Player p = e.getPlayer();
        if(!conf.contains(p.getName())){
            if(!p.getInventory().contains(Book.getBook())){
                p.getInventory().addItem(Book.getBook());
            }
        }
    }
}

Eclipse нигде не ругается.
В чем проблема?
 
Только настоящие идиоты пользуются командой reload.
 
  1. Не используйте большие буквы в названии пакетов
  2. Не начинайте название переменной с большой буквы, с большой буквы именуют классы
  3. Указывайте модификаторы доступа
  4. По вашей проблеме - вы создаете новый объект плагина "EnableClass enable = new EnableClass();" баккит сообщает вам, что класс уже создан и плагин инициализирован, а вы инициализируете его повторно
 
Нельзя создавать главный класс повторно.
Да, пока форум не работал, я разобрался. Но возникает другой вопрос: как тогда получать конфиг и использовать его в других классах, а не только в том где есть метод onEnable()?
 
Да, пока форум не работал, я разобрался. Но возникает другой вопрос: как тогда получать конфиг и использовать его в других классах, а не только в том где есть метод onEnable()?
Держи костыль

public static FileConfiguration config;
public void onEnable(){
config = getConfig();
}

public class CustomClass{
public Configuration config;
public CustomClass(){
this.config = ГЛАВНЫЙ_КЛАСС.config;
}
}
 

Поделиться этой страницей

Назад
Верх