Вопрос Проблема с MiniMessage

Версия Minecraft
1.16.X

t1mer

Пользователь
Сообщения
19
Решения
2
Я пишу плагин на Paper 1.16.5 и я хочу попробовать использовать MiniMessage, но столкнулся с проблемой: плагин отказывается запускаться с такой ошибкой: NoSuchMethodError: 'net.kyori.adventure.text.minimessage.MiniMessage net.kyori.adventure.text.minimessage.MiniMessage.miniMessage()' и указывает на 26 строку моего кода. Я все зависимости добавил, библиотека добавилась без каких-либо проблем, та и сам код вроде не подсвечивает методы красным, импорты все на месте.

Содержимое 26 строки:

Java:
private static final MiniMessage miniMessage = MiniMessage.miniMessage();

Я не понимаю в чем проблема и как вообще правильно пользоваться данной библиотекой на 1.16.5. Гайдов в интернете очень мало и то на более поздние версии. Саму библиотеку я добавил в Maven:

XML:
<dependency>
  <groupId>net.kyori</groupId>
  <artifactId>adventure-text-minimessage</artifactId>
  <version>4.17.0</version>
</dependency>

Я где-то слышал, что лучше использовать 4.1.0-SNAPSHOT версию данной библиотеки. Я так и сделал, все заработало, но проблема в том, что я в коде использовал Placeholder.unparsed("placeholder", placeholder), и не знаю, что делать, ведь открытой документации для 4.1.0 версии нет и подробнее ознакомиться с методами не могу.

Если вопрос сильно глупый - извините.
 
Решение
Супер, а ее надо использовать в связке с библиотекой adventure-text-minimessage? Или только ее добавлять и удалить зависимость adventure-text-minimessage, и потом уже дальше работать?
Вместе добавлять и через audiences отправлять Component сообщения

Что-то типа:
Просто на 1.16.5 не завезли minimessage. Оно отсутствует в самом ядре. Попробуй запустите свой плагин на 1.18 например и там всё будет нормально
На тех версиях, на которых он уже в ядре, его даже в мавен указывать не надо. Поэтому странно, что у него не получается. Как вариант встраивать его в плагин для работы на 1.16.5.
 
Я использовал другую версию (4.1.0). Тут пример:


На 1.16.5 работало.
Я тоже пробовал 4.1.0 использовать, сработало, но пропала возможность использования Placeholder.unparsed. Получается в этом случае по старинке заменять все необходимые фрагменты обычным реплейсом?
 
Вот есть такая штука, и она может помочь добавить поддержку хоть на 1.7.10, хоть на 1.21 (bukkit/spigot)

Объединено

Просто на 1.16.5 не завезли minimessage. Оно отсутствует в самом ядре. Попробуй запустите свой плагин на 1.18 например и там всё будет нормально
Также стоит уточнить, что в API Spigot/Bukkit он не поддерживается, надо именно Paper версии 1.18 и новее
 
Вот есть такая штука, и она может помочь добавить поддержку хоть на 1.7.10, хоть на 1.21 (bukkit/spigot)
Супер, а ее надо использовать в связке с библиотекой adventure-text-minimessage? Или только ее добавлять и удалить зависимость adventure-text-minimessage, и потом уже дальше работать?
 
Супер, а ее надо использовать в связке с библиотекой adventure-text-minimessage? Или только ее добавлять и удалить зависимость adventure-text-minimessage, и потом уже дальше работать?
Вместе добавлять и через audiences отправлять Component сообщения

Что-то типа:
 
Вместе добавлять и через audiences отправлять Component сообщения

Что-то типа:
Спасибо большое!!! =)
 
Назад
Сверху Снизу