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

jarjar: К вопросу о неработспобности плагинов в новых версиях craftbukkit (или как обновить Heroes)

BJIaD

Активный участник
Пользователь
Баллы
88
(2.2) Заголовок не отражает суть темы
Есть плагин на версию 1.2.5 его нужно переписать на версию 1.4.7 как это сделать?
 
1. Скачать исходники
2. Открыть в среде разработки
3. Исправить ошибки
4. Скомпилировать
5. ...
6. Профит!

Обычно третий пункт самый сложный, хотя в 99 случаях из 100 там нужно всего лишь исправить имена классов при импорте.
 
Плагин Heroes кто может с 145 в 147 r1.0 переделать?
 
Добрый день!

За последнее время вопрос всплыл несколько раз, поэтому ответ оформлю в виде отдельной темы. Тем более, что инструмент достаточно универсальный и предлагаемые костыли могут помочь в самых разных ситуациях.

Итак цитирую собственное сообщение из темы "Skills магия на сервере":

"Герои - отличный плагин. На 1.4.6, 1.4.7 их нет. И судя по всему не будет. Старую версию можно пытаться "подружить" при помощи http://code.google.com/p/jarjar/

Как я понимаю этот "инструмент" позволяет менять пакеты в jar файлах. Нужно прописать в rules.txtrule net.minecraft.server.** net.minecraft.server.v1_4_6.@1
rule org.bukkit.craftbukkit.** org.bukkit.craftbukkit.v1_4_R1.@1

и выполнить
java -jar jarjar-1.4.jar process rules.txt Heroes.jar Heroes_v147.jar

В результате будет jar, который будет работать. Но до тех пор, пока не встрется полностью переписанные и переименованные классы :(

P.S. Автор рецепта не я, а наш админ и игрок Galaran. Все никак его сюда не затащу :)"

Аналогично можно пытаться перетаскивать и другие плагины. Единственное необходимо понимать, что происходит. Можно прочитать тему: http://www.rubukkit.org/threads/Исп...ерекомпиляции-проекта-после-обновлений.26325/

Рецепт с использованием jarjar естественно не панацея. К примеру, в версии 1.4.5 (и более ранних) существовал класс под названием NetServerHandler, а в версии 1.4.6 - его нет. Теперь он называется PlayerConnection. Соответственно простого переименования org.bukkit.craftbukkit.v1_4_5 в org.bukkit.craftbukkit.v1_4_R1 нам уже будет недостаточно. Но во многих случаях можно смело не дожидаться выхода очередной версией плагина, а пользоваться jarjar.
 
Так там еще уйма скиллов. Они тоже будут работать?
P.S. Этот "jarjar" неведомая фигня :confused:
 
@Googleman, ну эта неведомая фигня работает :)
Со скилами тоже все ок. Как раз вчера три скилла переджарджарил ;) Кстати, у меня сложилось впечатление, что скиллов, которые пользуют craftbukkit в качестве API не так уж и много. Большинству достаточно bukkitAPI.
 
@Googleman, ну эта неведомая фигня работает :)
Со скилами тоже все ок. Как раз вчера три скилла переджарджарил ;) Кстати, у меня сложилось впечатление, что скиллов, которые пользуют craftbukkit в качестве API не так уж и много. Большинству достаточно bukkitAPI.
Это очень хорошо, что работают :). Но у меня даже не запускается :(
 
Fromgate, пожалуйста, сделайте это, ибо я не понимаю...(((

Я не буду этого делать по ряду причин.
Во-первых, рецепт практически дан в первом посте. Во-вторых, герои - это не открытый проект и распространять модифицированную версию я не имею права (в т.ч. морального ;)). В-третьих, ну постарайтесь хоть в этом разобраться: не просить же каждый раз.
 

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

Назад
Верх