当前位置: 首页 > 知识库问答 >
问题:

使用Maven时找不到插件主类

马华茂
2023-03-14

所以,我最近创建了我的第一个插件,叫做BetterTeaming。该插件正在使用插口api。插件发布后,一段时间后,有人建议我使用Maven从编译的jar中删除插口api依赖项。这应该缩小文件大小。然而,我对Maven了解不多。我成功地设置了它,并将文件复制到Maven文件夹(包括层次结构截图),但每次我在本地服务器Minecraft上加载插件时,它都会向我抛出ClassNotFoundException,并阻止加载插件。

到底什么是不正确的?

所以,我最近创建了我的第一个插件,叫做BetterTeaming。该插件正在使用插口api。插件发布后,一段时间后,有人建议我使用Maven从编译的jar中删除插口api依赖项。这应该缩小文件大小。然而,我对Maven了解不多。我成功地设置了它,并将文件复制到Maven文件夹(包括层次结构截图),但每次我在本地服务器(Minecraft)上加载插件时,它都会向我抛出ClassNotFoundException,并阻止插件加载。

等级制度

用主类src-main-plugin包plugin包。yml src-main-resources-plugin。yml公司

错误消息

[22:20:52 ERROR]: Could not load 'plugins\BT-maven-1.0-SNAPSHOT.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException: Cannot find main class `plugin.Main'
        at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:80) ~[spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:129) ~[spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.java:327) ~[spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager.java:248) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.craftbukkit.v1_12_R1.CraftServer.loadPlugins(CraftServer.java:305) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.craftbukkit.v1_12_R1.CraftServer.reload(CraftServer.java:750) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.Bukkit.reload(Bukkit.java:525) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.command.defaults.ReloadCommand.execute(ReloadCommand.java:27) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.command.SimpleCommandMap.dispatch(SimpleCommandMap.java:141) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchCommand(CraftServer.java:648) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.craftbukkit.v1_12_R1.CraftServer.dispatchServerCommand(CraftServer.java:634) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at net.minecraft.server.v1_12_R1.DedicatedServer.aP(DedicatedServer.java:444) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at net.minecraft.server.v1_12_R1.DedicatedServer.D(DedicatedServer.java:407) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at net.minecraft.server.v1_12_R1.MinecraftServer.C(MinecraftServer.java:679) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at net.minecraft.server.v1_12_R1.MinecraftServer.run(MinecraftServer.java:577) [spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at java.lang.Thread.run(Unknown Source) [?:1.8.0_301]
Caused by: java.lang.ClassNotFoundException: plugin.Main
        at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.8.0_301]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:152) ~[spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:100) ~[spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_301]
        at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.8.0_301]
        at java.lang.Class.forName0(Native Method) ~[?:1.8.0_301]
        at java.lang.Class.forName(Unknown Source) ~[?:1.8.0_301]
        at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:78) ~[spigot-1.12.2.jar:git-Spigot-dcd1643-e60fc34]
        ... 15 more

到底什么是不正确的?

我必须说,普通版本的插件,没有使用Maven,运行良好。我必须说,插件的普通版本,没有使用Maven,工作正常。


共有1个答案

牛迪
2023-03-14

plugin.yml文件中的main条目包含plugin. Main,但似乎在jar文件中没有plugin. Main类。由于您没有包含您的pom.xml,我无法知道到底出了什么问题。我建议您查看这些maven插件设置,看看更改设置以使用这些插件是否有效。

 类似资料:
  • 我有一个Java/Selenium/TestNG/Maven项目。我可以成功创建myproj-0.0.1-SNAPSHOT。jar文件。当我尝试运行它时,我得到一个错误: 我的主要目标是能够运行此快照。jar文件,用于在远程计算机上运行我的测试用例。 我在pom中使用了一个构建插件。xml: 构建项目时,我使用的是maven命令:“mvn clean package shade:shade” 这就

  • 我为我的服务器找到了一个非常好的插件,但它已经死了,作者没有更新它,所以我更新了它,但当我把插件放在我的插件文件夹中时,它没有工作。这是cmd错误]:无法加载“plugins\BossBarMessage”。jar'在文件夹“plugins”org中。布基特。插件。InvalidPlugineException:找不到主类“com”。那唐。bossbarmessage。组织上的“主要”。布基特。插

  • https://mvnrepository.com/artifact/org.apache.tomcat.maven/tomcat8-maven-plugin 当我使用运行时,我得到以下错误: 但是,rt.jar确实存在,并且我的JAVA_HOME环境设置正确: MVN-V Apache Maven 3.3.9(BB52D8502B132EC0A5A3F4C09453C07478323DC5;20

  • 这不是这个问题的重复。我在将外部依赖项包含到Javadoc中时遇到了问题,这不是问题所在。 我正在尝试将我的API部署到Maven Central。除了Maven Javadoc插件外,一切都很顺利。我的API有两个依赖项(Spigot API-org.spigotmc:Spigot API:1.19-R0.1-SNAPSHOT和JetBrains注释-org.JetBrains:Annotati

  • 我有一个多模块mavenSpring启动maven项目。其中一个子模块是一个存根(Spring启动应用程序),我想在myRealApp集成测试期间启动并停止它。 这是模块myRealApp中pom文件的外观。它也有所有的集成测试。它试图在集成测试前阶段启动存根模块。但当我在子模块目录中运行maven goal时,会出现错误: 错误:无法找到或加载主类io。大摇大摆我的浴缸 组织。阿帕奇。专家生命周

  • 将IntelliJ从版本12更新到13后,无法解析以下Maven相关插件: 当使用IntelliJ12时,这些不在插件列表中。不知怎么的,它们在更新后被添加了,现在IntelliJ抱怨它们找不到了。我可以在哪里从列表中删除这些插件或通过安装它们来解决问题? 我可以毫无问题地运行maven目标和,但是配置文件/插件在IDE中显示红色并伴有警告。