Хостинг серверов Minecraft playvds.com
  1. Вы находитесь в русском сообществе Bukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на русский язык плагины наших собратьев из других стран.
    Скрыть объявление

Помогите Первый плагин

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

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

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

    Баллы:
    88
    Всем привет. Я новичек в создание плагинов. То есть начинающий.
    Моя проблема в том,что при запуске сервера плагин не работает,то есть не запускается(не знаю как сказать).
    Вот может что то я делаю неправильно. Создаю плагин по тотуриалу http://dmitriymx.ru/blog/bukkit-tutorial/pishem-prostoj-plagin-dlya-bukkit-2.html

    Код:
    package loki4;
     
    import java.util.logging.Logger;
    import org.bukkit.Bukkit;
    import org.bukkit.ChatColor;
    import org.bukkit.event.EventHandler;
    import org.bukkit.event.Listener;
    import org.bukkit.event.player.PlayerJoinEvent;
    import org.bukkit.event.player.PlayerQuitEvent;
    import org.bukkit.plugin.java.JavaPlugin;
     
    public class DmxFirstPlugin extends JavaPlugin implements Listener {
      public static final Logger _log = Logger.getLogger("Minecraft");
     
      @Override
      public void onEnable() {
          _log.info("[DMX PLG] onEnable()"); //<a> произвольного текста в консоль сервера
          Bukkit.getPluginManager().registerEvents(this, this);
      }
     
      @EventHandler
      public void onJoin(PlayerJoinEvent event){
          event.getPlayer().sendMessage(ChatColor.GREEN + "Добро подаловать на сервер, " + ChatColor.GOLD + event.getPlayer().getName());
          event.setJoinMessage(ChatColor.GRAY + "Игрок " + ChatColor.GOLD + event.getPlayer().getName() + " зашел на сервер");
      } 
     
      @EventHandler
      public void onQuit(PlayerQuitEvent event){
          event.setQuitMessage("");
          getServer().broadcastMessage(ChatColor.GRAY + "Игрок " + ChatColor.GOLD + event.getPlayer().getName() + " покинул сервер");
      }
    }
     
  2. Хостинг MineCraft
    <
  3. DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    @L0lik,
    ошибка возможно в файле plugin.yml (или в его отсутствии)
    Предоставь полный текст ошибки из логов.
     
    Den_Abr нравится это.
  4. Автор темы
    L0lik

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

    Баллы:
    88

    plugin.yml
    Код:
    name: loki4Welcom
    main: ru.dmitriymx.bukkit.tutorial.DmxFirstPlugin
    description: Простой плагин
    version: 1.0
     
    Пароль123456789 нравится это.
  5. DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    Не то.
    Я просил тот высер, что пишется в консоли при загрузке плагинов.
    А это plugin.yml[DOUBLEPOST=1375356014,1375354998][/DOUBLEPOST]@L0lik,
    Ошибка в том, что неверно указан main класс в файле. plugin.yml
    должно быть loki4.DmxFirstPlugin

    Спасибы пользователю gamelax
     
    L0lik нравится это.
  6. Автор темы
    L0lik

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

    Баллы:
    88
    бесполезно,все ровно не работает. Может вам кинуть сам плагин?
     
  7. DPOH-VAR

    DPOH-VAR Старожил Пользователь

    Баллы:
    153
    Skype:
    dpohvar
    Плагин не нужно, не хочу с ним возиться.
    А вот лог файл - помог бы. Там исчерпывающая информация об ошибках
     
  8. MadeManZ

    MadeManZ Активный участник

    Баллы:
    88
    Skype:
    tq9ns3
    Он путь к классам неправильно указал
    сравниваем
    ru.dmitriymx.bukkit.tutorial.DmxFirstPlugin
    и
    package loki4
    Указываешь так
    PackageName+.+Main.java
     
    Rajah нравится это.
  9. Jampire

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

    Баллы:
    173
    Skype:
    jampire-h
    Имя в Minecraft:
    Jampire
    Бред. Чистейший бред.
    main это путь к главному классу. Необязательно к Main и без .java
    ru.jampire.bukkit.MyClass
     
  10. robertono

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

    Баллы:
    103
    @L0lik, дайте скриншот из эклипса.
     
  11. MadeManZ

    MadeManZ Активный участник

    Баллы:
    88
    Skype:
    tq9ns3
    Дак путь у него не правильно указан
    ru.dmitriymx.bukkit.tutorial.DmxFirstPlugin
    а нужно( если не менял название пакета)
    ru.dmitriymx.bukkit.tutorial.Loki4
     
  12. robertono

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

    Баллы:
    103
    У него в главном классе неправильный package
     
  13. konfyciu98

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

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Код:
    name: loki4Welcom
    main: loki4.DmxFirstPlugin
    description: Простой плагин
    version: 1.0
    Кажется так должен выглядеть plugin.yml!

    loki4.DmxFirstPlugin

    loki4- имя пакета
    DmxFirstPlugin - имя главного класса
     
  14. robertono

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

    Баллы:
    103
    @konfyciu98, зависит какой package
     
  15. konfyciu98

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

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    щито ?.?
     
  16. robertono

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

    Баллы:
    103
    @konfyciu98, в его случае да, loki4.DmxFirstPlugin правильный. Но разве нормальный package name не должен быть типа : ru.ТУТВАШНИКНЕЙМ.bukkit.НАЗВАНИЕПРОЕКТА.ИМЯГЛАВНОГОКЛАССА
     
  17. konfyciu98

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

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    вот так-то понятнее) да, ты прав, но я просто показал из его кода, как он должен был написать.[DOUBLEPOST=1376218430,1376218361][/DOUBLEPOST]и имя package может быть любым(как мне кажется)
    пиши хоть "cat.imlove.dog", то какая разница?
     
  18. robertono

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

    Баллы:
    103
    @konfyciu98, незнаю какая разница но многие плагино-разработчики пишут примерно так как я написал выше. Может так красивее и правильнее :)
     
  19. MadeManZ

    MadeManZ Активный участник

    Баллы:
    88
    Skype:
    tq9ns3
    На название пакета вобще пофиг
     
    konfyciu98 нравится это.
  20. konfyciu98

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

    Баллы:
    123
    Skype:
    wwwixelsor9
    Имя в Minecraft:
    konfyciu
    Да, так просто красивее!

    ru - показываешь то,что ты из России
    Ник - ну это определяет автора
    Имя плагина - это и так понятно
    Код:
    ru.konfyciu.Ecocow
     
  21. robertono

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

    Баллы:
    103
    @fromgate, сменить название пакета дело двух кликов, так что это не особо большая проблема.
     

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