Minecraft Bukkit插件启动报错:无法找到主类me.raultechsupport.helloworld.Main
Minecraft插件启动报错:无法找到主类
me.raultechsupport.helloworld.Main 我正在学习开发Minecraft插件,但起步阶段就卡壳了:导出插件包后放到服务器运行,直接弹出「无法找到主类」的错误。我已经试过移动plugin.yml文件位置、反复检查导出内容是否完整、重命名类名这些方法,也查过不少相关问题帖,但错误还是没解决,求各位大佬帮忙看看!
Main类代码
package me.raultechsupport.helloworld; import org.bukkit.plugin.java.JavaPlugin; import me.raultechsupport.helloworld.commands.hellocommand; public class Main extends JavaPlugin { @Override public void onEnable() { new hellocommand(this); } }
hellocommand类代码
package me.raultechsupport.helloworld.commands; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; import me.raultechsupport.helloworld.Main; public class hellocommand implements CommandExecutor { @SuppressWarnings("unused") private Main plugin; public hellocommand(Main plugin) { this.plugin = plugin; plugin.getCommand("hello").setExecutor(this); } @Override public boolean onCommand(CommandSender sender, Command cmd, String label, String[] arg3) { if (!(sender instanceof Player)) { sender.sendMessage("Only players may execute this command!"); return true; } Player p = (Player) sender; if (p.hasPermission("hello.use")) { p.sendMessage("Hi!"); return true; } else { p.sendMessage("You do not have permission to execute this command!"); } return false; } }
plugin.yml配置
name: HelloWorld version: 1.0 author: RaulTechSupport main: me.raultechsupport.helloworld.Main description: Hello. commands: hello: aliases: [hi] description: Hi!
控制台错误日志
org.bukkit.plugin.InvalidPluginException: Cannot find main class `me.raultechsupport.helloworld.Main' [11:36:00 ERROR]: Could not load 'plugins/HelloWorld.jar' in folder 'plugins' at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:137) ~[patched_1.16.5.jar:git-Purpur-1082] at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:81) ~[patched_1.16.5.jar:git-Purpur-1082] at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:305) ~[patched_1.16.5.jar:git-Purpur-1082] at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:397) ~[patched_1.16.5.jar:git-Purpur-1082] at org.bukkit.craftbukkit.v1_16_R3.CraftServer.loadPlugins(CraftServer.java:389) ~[patched_1.16.5.jar:git-Purpur-1082] at net.minecraft.server.v1_16_R3.DedicatedServer.init(DedicatedServer.java:264) ~[patched_1.16.5.jar:git-Purpur-1082] at net.minecraft.server.v1_16_R3.MinecraftServer.w(MinecraftServer.java:1070) ~[patched_1.16.5.jar:git-Purpur-1082] at net.minecraft.server.v1_16_R3.MinecraftServer.lambda$a$0(MinecraftServer.java:291) ~[patched_1.16.5.jar:git-Purpur-1082] Caused by: java.lang.ClassNotFoundException: me.raultechsupport.helloworld.Main at java.lang.Thread.run(Thread.java:834) [?:?] at java.net.URLClassLoader.findClass(URLClassLoader.java:471) ~[?:?] at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:183) ~[patched_1.16.5.jar:git-Purpur-1082] at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:111) ~[patched_1.16.5.jar:git-Purpur-1082] at java.lang.ClassLoader.loadClass(ClassLoader.java:522) ~[?:?] at java.lang.Class.forName0(Native Method) ~[?:?] at java.lang.Class.forName(Class.java:398) ~[?:?] at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:79) ~[patched_1.16.5.jar:git-Purpur-1082] at java.lang.ClassLoader.loadClass(ClassLoader.java:589) ~[?:?] ... 8 more
注:已经按照之前问题帖里的建议修正过相关内容,但错误依然存在。
内容的提问来源于stack exchange,提问作者RaulTechSupport




