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

Помогите This method must return a result of type boolean

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

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

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

    Баллы:
    123
    Skype:
    vanya.studenikin
    Имя в Minecraft:
    stuvanya
    Написал первый плагин (по туториалу) , а он не запускается
    Код:
    [18:38:07] [Server thread/ERROR]: Could not load 'plugins\CubeCraftWelcome.jar' in folder 'plugins'
    org.bukkit.plugin.InvalidDescriptionException: Invalid plugin.yml
        at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:162) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:133) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.bukkit.craftbukkit.v1_7_R4.CraftServer.loadPlugins(CraftServer.java:369) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.DedicatedServer.init(DedicatedServer.java:152) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:458) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
    Caused by: org.yaml.snakeyaml.error.YAMLException: java.nio.charset.MalformedInputException: Input length = 1
        at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:200) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.yaml.snakeyaml.reader.StreamReader.<init>(StreamReader.java:60) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.yaml.snakeyaml.Yaml.load(Yaml.java:412) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.bukkit.plugin.PluginDescriptionFile.<init>(PluginDescriptionFile.java:232) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:157) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        ... 5 more
    Caused by: java.nio.charset.MalformedInputException: Input length = 1
        at java.nio.charset.CoderResult.throwException(Unknown Source) ~[?:1.7.0_71]
        at sun.nio.cs.StreamDecoder.implRead(Unknown Source) ~[?:1.7.0_71]
        at sun.nio.cs.StreamDecoder.read(Unknown Source) ~[?:1.7.0_71]
        at java.io.InputStreamReader.read(Unknown Source) ~[?:1.7.0_71]
        at org.yaml.snakeyaml.reader.UnicodeReader.read(UnicodeReader.java:123) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at java.io.Reader.read(Unknown Source) ~[?:1.7.0_71]
        at org.yaml.snakeyaml.reader.StreamReader.update(StreamReader.java:184) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.yaml.snakeyaml.reader.StreamReader.<init>(StreamReader.java:60) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.yaml.snakeyaml.Yaml.load(Yaml.java:412) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.bukkit.plugin.PluginDescriptionFile.<init>(PluginDescriptionFile.java:232) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.bukkit.plugin.java.JavaPluginLoader.getPluginDescription(JavaPluginLoader.java:157) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        ... 5 more
    вот сам плагин:
    http://rghost.ru/59404080
     
  2. Хостинг MineCraft
    <
  3. Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Ну, всё ведь понятно: корявый plugin.yml. Мне даже кажется (Input length = 1), что он у тебя всего в 1 байт.
     
  4. Автор темы
    Studenikin

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

    Баллы:
    123
    Skype:
    vanya.studenikin
    Имя в Minecraft:
    stuvanya
    можете чуть поподробнее? я в этом полнейший нуб
     
  5. AxmeD

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

    Баллы:
    103
    Skype:
    ahmed136323
    В файле plugin.yml ты что написал?
     
  6. Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Ну, чтобы понять, что не так с plugin.yml, на него нужно хотя бы взглянуть.
    Напиши в посте теги: [ CODE=YAML][ /CODE] (без пробелов), и вставь между ними содержимое твоего plugin.yml.
     
  7. makssof

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

    Баллы:
    103
    Skype:
    makssofez
     
  8. Автор темы
    Studenikin

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

    Баллы:
    123
    Skype:
    vanya.studenikin
    Имя в Minecraft:
    stuvanya
    Код:
    name:  First Plugin
    main: ru.cubecraft.bukkit.cubehelp.CubeCraftHelp
    description: Простой плагин с сайта dmitriymx.ru
    version: 1.0
    [DOUBLEPOST=1417622355,1417622271][/DOUBLEPOST]http://dmitriymx.ru/blog/bukkit-tutorial/pishem-prostoj-plagin-dlya-bukkit-2.html я писал (вернее копировал) по этому туториалу[DOUBLEPOST=1417622784][/DOUBLEPOST]Помогло сохранение plugin.yml в формате utf-8[DOUBLEPOST=1417630384][/DOUBLEPOST]спасибо за помощь, еще одна проблема:
    Код:
    package ru.stuvanya.cubehelp;
    
    import java.util.logging.Logger;
    
    import org.bukkit.ChatColor;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.event.Listener;
    import org.bukkit.plugin.java.JavaPlugin;
    
    public class CubeHelp  extends JavaPlugin implements Listener{
        public static final Logger _log = Logger.getLogger("Minecraft");
        @Override
        public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
            if(command.getName().equalsIgnoreCase("help")){
                sender.sendMessage(ChatColor.GREEN + "какой-то текст");
                return true;
            }else if(command.getName().equalsIgnoreCase("pl")){
                sender.sendMessage(ChatColor.GREEN + "какой-то текст");
                return true;
            }else if(command.getName().equalsIgnoreCase("plugins")){
                sender.sendMessage(ChatColor.GREEN + "какой-то текст");
                return true;
            }else if(command.getName().equalsIgnoreCase("about")){
                sender.sendMessage(ChatColor.GREEN + "какой-то текст");
                return true;
            }else if(command.getName().equalsIgnoreCase("?")){
                sender.sendMessage(ChatColor.GREEN + "какой-то текст");
                return true;
            }else if(command.getName().equalsIgnoreCase("bukkit")){
                sender.sendMessage(ChatColor.GREEN + "какой-то текст");
                return true;
            }
            return false;
        }
    }
    Выкидывает ошибку:
    Код:
    [21:05:57] [Server thread/ERROR]: null
    org.bukkit.command.CommandException: Unhandled exception executing command 'cubecrafthelp:pl' in plugin CubeCraftHelp v0.1
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:46) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:181) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at org.bukkit.craftbukkit.v1_7_R4.CraftServer.dispatchCommand(CraftServer.java:767) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.PlayerConnection.handleCommand(PlayerConnection.java:1043) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.PlayerConnection.a(PlayerConnection.java:880) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.PacketPlayInChat.a(PacketPlayInChat.java:28) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.PacketPlayInChat.handle(PacketPlayInChat.java:65) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.NetworkManager.a(NetworkManager.java:186) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.ServerConnection.c(ServerConnection.java:81) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.MinecraftServer.v(MinecraftServer.java:734) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.DedicatedServer.v(DedicatedServer.java:289) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.MinecraftServer.u(MinecraftServer.java:584) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.MinecraftServer.run(MinecraftServer.java:490) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        at net.minecraft.server.v1_7_R4.ThreadServerApplication.run(SourceFile:628) [spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
    Caused by: java.lang.Error: Unresolved compilation problem:
        This method must return a result of type boolean
    
        at ru.stuvanya.cubehelp.CubeHelp.onCommand(CubeHelp.java:13) ~[?:?]
        at org.bukkit.command.PluginCommand.execute(PluginCommand.java:44) ~[spigot.jar:git-Spigot-1.7.9-R0.2-208-ge0f2e95]
        ... 13 more
     
  9. Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Попробуй перекомпилировать полностью, с очисткой временных файлов
     
  10. Автор темы
    Studenikin

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

    Баллы:
    123
    Skype:
    vanya.studenikin
    Имя в Minecraft:
    stuvanya
    временные файлы это что?
     
  11. Reality_SC

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

    Баллы:
    123
    Имя в Minecraft:
    Reality_SC
    Кстати, есть более красивая конструкция через switch.[DOUBLEPOST=1417631752,1417631695][/DOUBLEPOST]
    Ну обычно это папка build или dist или target.
    В чем ты пишешь?
     
  12. Автор темы
    Studenikin

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

    Баллы:
    123
    Skype:
    vanya.studenikin
    Имя в Minecraft:
    stuvanya
    я пишу в eclipse
     
  13. Dereku

    Dereku Старожил

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Код:
    package ru.stuvanya.cubehelp;
    
    import java.util.logging.Logger;
    
    import org.bukkit.ChatColor;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.event.Listener;
    import org.bukkit.plugin.java.JavaPlugin;
    
    public class CubeHelp  extends JavaPlugin implements Listener{
        public static final Logger _log = Logger.getLogger("Minecraft");
        @Override
        public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
            switch(command.getName()) {
                case "bukkit":
                case "?":
                case "about":
                case "plugins":
                case "pl":
                case "help":
                    sender.sendMessage(ChatColor.GREEN + "какой-то текст");
                    break;
                default:
                    break;
            }
            return true;
        }
    }
     
  14. Автор темы
    Studenikin

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

    Баллы:
    123
    Skype:
    vanya.studenikin
    Имя в Minecraft:
    stuvanya
    спасибо[DOUBLEPOST=1417638829,1417635756][/DOUBLEPOST]Я доделал плагин, при вводе команд /help, /pl, /plugins и т.д он выводит то что мне нужно, но команды вида /essentials:help или /bukkit:pl все равно работают можно ли как-то сделать чтобы мой плагин их блокировал, и выводил то же самое?
     
  15. Dereku

    Dereku Старожил

    Баллы:
    173
    Skype:
    derek_unavailable
    Имя в Minecraft:
    _Dereku
    Код:
    package ru.stuvanya.cubehelp;
    
    import java.util.logging.Logger;
    
    import org.bukkit.ChatColor;
    import org.bukkit.command.Command;
    import org.bukkit.command.CommandSender;
    import org.bukkit.event.Listener;
    import org.bukkit.plugin.java.JavaPlugin;
    
    public class CubeHelp  extends JavaPlugin implements Listener{
        public static final Logger _log = Logger.getLogger("Minecraft");
        @Override
        public boolean onCommand(CommandSender sender, Command command, String label, String[] args) {
            if (command.getName().startsWith("bukkit:")) { //Названия метода точно не помню, звиняй.
                 sender.sendMessage(ChatColor.GREEN + "какой-то текст");
                 return true;
            }
            switch(command.getName()) {
                case "bukkit":
                case "?":
                case "about":
                case "plugins":
                case "pl":
                case "help":
                    sender.sendMessage(ChatColor.GREEN + "какой-то текст");
                    break;
                default:
                    break;
            }
            return true;
        }
    }
     
  16. Автор темы
    Studenikin

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

    Баллы:
    123
    Skype:
    vanya.studenikin
    Имя в Minecraft:
    stuvanya
    спасибо за помощь
     
  17. Reality_SC

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

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

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