Письмо появляется в выводе консоли, но не должно. проблема с Bukkit.getConsoleSender().sendMessage();

Я пытаюсь разделить код на классы. Этот код отправляет в консоль текст с буквой B в начале строки, но не должен.

Код:

static ConsoleWrapper cw = new ConsoleWrapper();
cw.notify("using url:" + database.sql_url);
cw.notify("Plugin loaded!");

в ConsoleWrapper.java

public class ConsoleWrapper {
    static String pluginName = App.pluginName;
    static ConsoleCommandSender console = Bukkit.getConsoleSender();

    public void notify(String msg) {
        // wrapper for console messages
        console.sendMessage(("§6[" + pluginName + "]" + msg));
    }
    
    public void alarm(String msg) {
        // wrapper for console messages
        console.sendMessage(("§c[" + pluginName + "]" + msg));
    }
}

но если console.sendMessage(("§c[" + pluginName + "]" + msg)); выполняется в основном классе, буква B не отображается в консоли.

output with cw.notify

[12:01:07 INFO]: В[EggCounter] Plugin is starting first time, or restoring!
[12:01:08 INFO]: В[EggCounter]using url:jdbc:MYSQL://192.168.0.186:9889/easter_eggs

output with console.sendMessage()

[12:13:21 INFO]: [EggCounter]using url:jdbc:MYSQL://192.168.0.186:9889/easter_eggs
[12:13:21 INFO]: [EggCounter]Plugin loaded!
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
1
0
30
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Не рекомендуется писать свой собственный § из-за возможных проблем с кодировкой.

Лучше использовать перечисление ChatColor, например:

public class ConsoleWrapper {
    static String pluginName = App.pluginName;
    static ConsoleCommandSender console = Bukkit.getConsoleSender();

    public void notify(String msg) {
        // wrapper for console messages
        console.sendMessage(ChatColor.GOLD + "[" + pluginName + "]" + msg);
    }
    
    public void alarm(String msg) {
        // wrapper for console messages
        console.sendMessage(ChatColor.RED + "[" + pluginName + "]" + msg);
    }
}

Вы можете найти все цветовые коды здесь.

Другие вопросы по теме