我正在尝试学习如何编写minecraft插件,但是我在开始时遇到了一点问题,当我尝试运行导出的插件时,我得到一个主类未找到错误。我已经尝试移动plugin.yml文件,检查所有部分都导出和重命名类等无济于事。也阅读了现有的问题。任何帮助都将不胜感激。
主要:
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;
}
}
插件。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
Pic of Package Explorer编辑前一个问题,更正建议但错误仍然存在
你应该把你的插件。如果您使用Eclipse进行编译,则在源文件夹(src)中使用yml。如果使用IntelliJ,请将文件放在“资源”文件夹中。您的API(Spigot或Bukkit)无法加载文件,因为它实际上没有在最终的<代码>中导出。jar文件。您可以通过使用7Zip或WinRAR等存档程序打开Jar文件来查看文件是否已导出。插件。yml应该位于文件的根目录下。
我已经有一段时间没有编写插件了,但回顾一下我以前做的,我的插件。yml不位于参考库中:
还有,我的插件。yml与您的有点不同:
name: Message
main: Main.MainMessage
version: 1.0.0
author: Tom Croux - CerfMetal
commands:
msg:
description: Send a private message
permission: msg.use
r:
description: Reply to a private message
permission: msg.use
mute:
description: Mute a player
permission: msg.use
unmute:
description: Unmute a player
permission: msg.use
我为我的服务器找到了一个非常好的插件,但它已经死了,作者没有更新它,所以我更新了它,但当我把插件放在我的插件文件夹中时,它没有工作。这是cmd错误]:无法加载“plugins\BossBarMessage”。jar'在文件夹“plugins”org中。布基特。插件。InvalidPlugineException:找不到主类“com”。那唐。bossbarmessage。组织上的“主要”。布基特。插
我有一个Java/Selenium/TestNG/Maven项目。我可以成功创建myproj-0.0.1-SNAPSHOT。jar文件。当我尝试运行它时,我得到一个错误: 我的主要目标是能够运行此快照。jar文件,用于在远程计算机上运行我的测试用例。 我在pom中使用了一个构建插件。xml: 构建项目时,我使用的是maven命令:“mvn clean package shade:shade” 这就
所以,我最近创建了我的第一个插件,叫做BetterTeaming。该插件正在使用插口api。插件发布后,一段时间后,有人建议我使用Maven从编译的jar中删除插口api依赖项。这应该缩小文件大小。然而,我对Maven了解不多。我成功地设置了它,并将文件复制到Maven文件夹(包括层次结构截图),但每次我在本地服务器Minecraft上加载插件时,它都会向我抛出ClassNotFoundExcep
将IntelliJ从版本12更新到13后,无法解析以下Maven相关插件: 当使用IntelliJ12时,这些不在插件列表中。不知怎么的,它们在更新后被添加了,现在IntelliJ抱怨它们找不到了。我可以在哪里从列表中删除这些插件或通过安装它们来解决问题? 我可以毫无问题地运行maven目标和,但是配置文件/插件在IDE中显示红色并伴有警告。
问题内容: 我一直在为我班的编程工作。我正在使用NetBeans。我完成了项目,效果很好。当我尝试运行它时,出现一条消息“找不到主类”。这是一些主要的代码: 我之前发布了此内容,但遇到了一些问题。我已经固定了其他人,现在只剩下这一个了。任何建议将不胜感激。 问题答案: 在项目浏览器中右键单击您的项目 点击属性 点击运行 确保您的主类是您想要成为切入点的主类。(确保使用完全限定的名称,即mypack
我一直在做编程课的作业。我正在使用NetBeans。我完成了我的项目,它工作得很好。当我尝试运行它时,我收到一条消息,上面写着“找不到主类”。下面是一些主要的代码: 我以前发过这个,但有几个问题。我已经修好了其他的,现在只剩下这一个了。任何建议都将不胜感激。