1. Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
    Скрыть объявление
Скрыть объявление
В преддверии глобального обновления, мы проводим исследования, которые помогут нам сделать опыт пользования форумом ещё удобнее. Помогите нам, примите участие!

Туториал Отладка плагинов

Тема в разделе "Руководства, инструкции, утилиты", создана пользователем serega6531, 23 июн 2014.

  1. Автор темы
    serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Надоело вставлять logger.info("1") повсюду с свой код? Хочешь удобной отладки? Тогда следуй моему туториалу!

    Итак, как же отлаживать Bukkit плагины? Инструкция по шагам:
    1. Заходим в папку с тестовым сервером и открываем скрипт запуска. Вставляем в строку этот текст:
      Код:
      -Xdebug -Xrunjdwp:transport=dt_socket,address=ВАШ_РАНДОМНЫЙ_ПОРТ,server=y,suspend=y
      Запускаем. Смотрим на одинокую строчку в консоли.
    2. Заходим в eclipse, Run --> Debug Configurations. Добавляем новую конфигурацию типа "Remote Java Application". Порт выставляем как в строке запуска.
    3. Расставляем брейкпоинты где хотим и нажимаем Debug. Сервер наконец-то запускается.
    4. Отлаживаем
    5. ???????
    6. PROFIT!
    [​IMG]
    [​IMG] [​IMG]
     
  2. BeLkA

    BeLkA Старожил Пользователь

    Баллы:
    153
    Skype:
    FayStaff
    Thread thrd = RuBukkit.getTopics().get("Руководства, инструкции, утилиты").getThread("[Туториал] Отладка Плагинов");
    if(thrd != null) {
    Message msg = thrd.getMessageById(1);
    msg.setLikes(msg.getLikes() + 1);
    }
     
    Последнее редактирование: 27 июн 2014
  3. Veritange

    Veritange Новичок Пользователь

    Баллы:
    21
    :good: Лойс.
    Ещё интересует, где в net beans подобный отладчик.
     
  4. Автор темы
    serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Не пользуюсь NetBeans
     
    Последнее редактирование: 24 июн 2014
  5. Den_Abr

    Den_Abr Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    Den_Abr
    Имя в Minecraft:
    Den_Abr
    Тоже что-то связанное с Debug/Отладка
     
  6. Reality_SC

    Reality_SC Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    На стрелочке рядом с кнопкой отладка — "Вложить отладчик". Там через SocketAttach.
     
  7. Автор темы
    serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Главное, чтобы была выбрана удаленная отладка.
     
  8. Veritange

    Veritange Новичок Пользователь

    Баллы:
    21
    Спасибо :good:
    Работает.
     
  9. Автор темы
    serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Up!
    Может быть перенест туториал в раздел туториалов?
     
  10. Veritange

    Veritange Новичок Пользователь

    Баллы:
    21
    Твой метод удобен, когда нужно проверить, происходит ли вызов метода, обращение к переменной и т.п. А как проверять значения? А есть ли возможность делать плагин "на ходу" (не компилируя каждый раз плагин и последующей установкой на сервер).
     
  11. Автор темы
    serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    Так и проверяете. Наводите мышку на переменную и смотрите. Без рекомпиляции нельзя.
     
  12. fromgate

    fromgate Старожил Пользователь

    Баллы:
    173
    Имя в Minecraft:
    fromgate
    Кроме того, в режиме отладки, текущие переменные отображаются автоматически:
    [​IMG]
     
  13. Reality_SC

    Reality_SC Старожил Пользователь

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Кроме того, если во время отладки вы не очень критичным образом поменяли код, в NetBeans есть возможность тут же его залить в работающую JVM, без перекомпиляции, заливки и перезапуска сервера.

    Снимок, пля.png

    На 99% уверен, что и в этих ваших эклипсах есть аналогичная функция.
     
  14. Автор темы
    serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
    О, тему в туториалы перенесли.
     
  15. Veritange

    Veritange Новичок Пользователь

    Баллы:
    21
    Лайк :good: То, что мне нужно.
     
  16. Автор темы
    serega6531

    serega6531 Старожил Девелопер Пользователь

    Баллы:
    173
    Skype:
    shkurovs
  17. CraftCoder

    CraftCoder Старожил Пользователь

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    В новых версиях при дебаге вырубается серв из-за слишком длинного тика. Как исправить?
     
  18. Dereku

    Dereku Старожил Пользователь

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Выставить этот тик примерно на час.
     
  19. CraftCoder

    CraftCoder Старожил Пользователь

    Баллы:
    108
    Имя в Minecraft:
    CraftCoderr
    А где это?
     
  20. Dereku

    Dereku Старожил Пользователь

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    server.properties:
    max-tick-time=60000 #ms
     

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