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

[TO DELETE] Шаблон/каркас для старта разработки любого плагина (Maven).

Тема в разделе "Разработка плагинов для новичков", создана пользователем Reality_SC, 17 июн 2014.

Статус темы:
Закрыта.
  1. Автор темы
    Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Обновлёно; добавлен пример работы с gson — подробности в шапке.
     
  2. MOR_IV

    MOR_IV Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    MOR_IV
    А вообще для мелких плагинов смысл этих плясок с бубном?
    Делаю так:
    - Еклипс Новый проект
    - Добавить дополнительные jar выбираю списком все мне необходимые баккит, WG, PEX и тому подобное
    - создаю пакет и класс + plugin.yml
    - пишу плагин
    - потом проект-экспорт-jar - путь и имя.
    Готово!
    Ни каких maven gradle и т.п.
    Еще один аргумент:
    - берем нужный класс чужого плагина(хоть с сорцев, хоть с декомпилятора)
    - подключаем в еклипс чужой готовый плагин
    - кидаем jar'ы которые импортированы ТОЛЬКО в этом классе
    - изменяем класс
    - Выбираем его, экспорт jar и вуаля, мы собрали один класс из всего плагина.
    кидаем его в чужой собранный плагин и готово.
     
  3. Автор темы
    Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Лично для меня это именно то, что при помощи простейшей копипасты + нажатия CTRL+R (чтобы переименовать)) позволяет тут же создать новый работающий плагин, без телодвижений вроде
    Я хочу сказать, что существует такая вещь, как прогресс — я сам пишу на Java относительно недавно, год+, и для меня все эти вещи тоже были в новинку, но если ты их не понимаешь, то это не значит, что они не нужны — их задача на самом деле и заключается в том, что они приносят удобства и ускоряют работу. В противном случае они просто бы никогда не появились на свет.
    Конечно, нет никакой сложности создать маленький плагин, и на самом деле нет сложности создать и большой. Перекомпилировать 1 класс любого плагина можно вообще без IDE, используя только командную строку и javac.

    Я советую тебе попробовать вникнуть в то, какие задачи решают Maven и Gradle, если конечно ты не имеешь опыта использования их.
    Еще один аргумент:
    • Чем больше ты, лично ты, и лично каждый из нас, начинает использовать больше различных средств и инструментов, тем ты более ценен на рынке труда, имея опыт "правильной разработке", а не "на коленке". Если ты умеешь что-то делать, стоит попробовать это сделать другими способами.
     
  4. MOR_IV

    MOR_IV Активный участник Пользователь

    Баллы:
    88
    Имя в Minecraft:
    MOR_IV
    Вы правы - у меня крайне мало опыта maven и gradle, и вообще я наткнулся на эту случайно, когда искал информацию по работе с maven проектом.
    Кстати я знаю как собрать класс без ide, и что лично gradle(про мавен хз) может его собрать. Просто забыл про это.
    Единственное что мне не нравится в этих библиотеках, так это то, что без интернета в них особо не поработаешь. А с интернетом у меня беда уже много лет.(доздравствует мегафон 3g с ограничением трафика 20gb месяц). Вот поэтому я обхожу стороной интернето-затратные библиотеки.
     
  5. Автор темы
    Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Я не знаю, как это происходит в Eclipse, я пользуюсь NetBeans, но уверен, что аналогично:
    IDE установила Maven как свой плагин, а он имеет свой собственный локальный репозиторий. При первой компиляции он выкачивает все необходимые зависимости в неё и они становятся доступными навсегда (если не чистить руками кеш или не менять версии, от которых зависит твой проект). Артефакты (результаты) сборки тоже помещаются в локальный репо. Конечно есть шансы, что какие-то зависимости начинают сами использовать обновлённые версии чего-то другого, но это плохой тон: если у тебя поменялась версия зависимости, поменяй хотя бы свою минорную версию.

    Согласен полностью, если интернет дерьмо или его нет, то компиляция как минимум начинает подтуплять. Но для меня это редкость, всё-таки the future is now.
     
  6. chief

    chief Активный участник Пользователь

    Баллы:
    76
    Пытался сам исправить но я еще не дошел до необходимого уровня
    Если внести изменения в конфиг и перезагрузить командой /tbtmplt reload то конфиг перезаписывается плагином
    Могли бы вы добавить пример нестандартного конфига? Например, для сообщений
     
  7. Автор темы
    Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Запилил там какие-то мелочи, принял (с исправлениями) твой Pull Request.
    Не очень понял, что ты хочешь из работы с конфигами?
     
  8. chief

    chief Активный участник Пользователь

    Баллы:
    76
    Я очень многого не понимаю в java поэтому прошу прощения, что некачественную интеграцию экономики сделал
    Если вручную вносить данные в config.yml и выполнить команду /tbtmplt reload то плагин не примет сделанные изменения, поскольку в onDisable() есть saveConfig() и он перезаписывает конфиг config.yml при /tbtmplt reload и вручную внесены изменения не сохраняются
    Объяснил бы понятнее но всех терминов я не знаю
     
  9. Автор темы
    Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Это, значит, я понял правильно и уже было сегодня пофикшено.
    Я делал эту хрень давно и больше для себя, поэтому за вставки быдлокода не отвечаю :)
     
  10. Dymeth

    Dymeth Активный участник Пользователь

    Баллы:
    98
    Имя в Minecraft:
    Dymeth
    Наверно совсем не в тему, но вдруг кому пригодится.
    Недавно наткнулся на этот плагин для IDEA. Возможно для других сред тоже есть что-то подобное, кстати.
     
    Последнее редактирование: 10 авг 2016
Статус темы:
Закрыта.

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