tox1cozZ
aka Agravaine
- 8,456
- 598
- 2,893
Столкнулся с такой проблемой при написании мода, что консоль обрабатывает русский текст некорректно и выводит каракули. Именно сам терминал(консоль). Начал искать причину.
Поставил чистый Forge, отображение в консоли корректное.
Поставил стороннее ядро, связывающее spigot/forge и получил каракули(вывел текст модом).
Поставил чистый Spigot, получил каракули(вывел текст плагином).
Начал искать источник проблемы и выяснил, что Forge использует jline библиотеку, которая отвечает за терминал и она у него версии 3.5.1 для 1.12.2 на данный момент.
Spigot же тоже использует эту библиотеку, но v2
Прошу обратить внимание на то, что либа сильно изменилась в новых версиях(3.5) в отличии от старых (2.1), то бишь просто подменить либу не получится, кидает ClassNotFoundException.
Какие кто может подсказать решения? Говорят некоторые, что у них spigot той же версии выводит русские символы и тут уже сомнения по поводу различных версий jline. Может быть дело в java? У кого какие мысли?
Кодировка у обоих батников -Dfile.encoding=UTF-8
Пробовалось: 866, 1251, 65001
65001 - дает русский текст, но с багами. Например, дублирует строки/буквы в русском тексте.
P.S. Чистый фордж спокойно работает с русским текстом на UTF-8, а чистый spigot на 866. Если брать ядро связку по типу cauldron, перестает "читаться" правильно UTF-8(у плагинов+модов), но частично работает 866(только у плагинов и без поддержки окраса)
Поставил чистый Forge, отображение в консоли корректное.
Поставил стороннее ядро, связывающее spigot/forge и получил каракули(вывел текст модом).
Поставил чистый Spigot, получил каракули(вывел текст плагином).
Начал искать источник проблемы и выяснил, что Forge использует jline библиотеку, которая отвечает за терминал и она у него версии 3.5.1 для 1.12.2 на данный момент.
Spigot же тоже использует эту библиотеку, но v2
Прошу обратить внимание на то, что либа сильно изменилась в новых версиях(3.5) в отличии от старых (2.1), то бишь просто подменить либу не получится, кидает ClassNotFoundException.
Какие кто может подсказать решения? Говорят некоторые, что у них spigot той же версии выводит русские символы и тут уже сомнения по поводу различных версий jline. Может быть дело в java? У кого какие мысли?
Кодировка у обоих батников -Dfile.encoding=UTF-8
Пробовалось: 866, 1251, 65001
65001 - дает русский текст, но с багами. Например, дублирует строки/буквы в русском тексте.
P.S. Чистый фордж спокойно работает с русским текстом на UTF-8, а чистый spigot на 866. Если брать ядро связку по типу cauldron, перестает "читаться" правильно UTF-8(у плагинов+модов), но частично работает 866(только у плагинов и без поддержки окраса)