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

Bukkit java插件中的ClassNotFoundException

崔棋
2023-03-14

我正在尝试恢复一个插件,但发现了一个错误:

[03:01:18 ERROR]: Could not load 'plugins\Reporter.jar' in folder 'plugins'
org.bukkit.plugin.InvalidPluginException: java.lang.ClassNotFoundException: me.f
levasgr.rainbow.Reporter
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j
ava:184) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at org.bukkit.plugin.SimplePluginManager.loadPlugin(SimplePluginManager.
java:308) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at org.bukkit.plugin.SimplePluginManager.loadPlugins(SimplePluginManager
.java:231) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at org.bukkit.craftbukkit.v1_7_R1.CraftServer.loadPlugins(CraftServer.ja
va:255) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at org.bukkit.craftbukkit.v1_7_R1.CraftServer.<init>(CraftServer.java:23
3) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at net.minecraft.server.v1_7_R1.PlayerList.<init>(PlayerList.java:63) [c
raftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at net.minecraft.server.v1_7_R1.DedicatedPlayerList.<init>(SourceFile:14
) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at net.minecraft.server.v1_7_R1.DedicatedServer.init(DedicatedServer.jav
a:126) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at net.minecraft.server.v1_7_R1.MinecraftServer.run(MinecraftServer.java
:424) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at net.minecraft.server.v1_7_R1.ThreadServerApplication.run(SourceFile:6
17) [craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
Caused by: java.lang.ClassNotFoundException: me.flevasgr.rainbow.Reporter
        at java.net.URLClassLoader$1.run(Unknown Source) ~[?:1.7.0_25]
        at java.net.URLClassLoader$1.run(Unknown Source) ~[?:1.7.0_25]
        at java.security.AccessController.doPrivileged(Native Method) ~[?:1.7.0_
25]
        at java.net.URLClassLoader.findClass(Unknown Source) ~[?:1.7.0_25]
        at org.bukkit.plugin.java.PluginClassLoader.findClass0(PluginClassLoader
.java:80) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.
java:53) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.7.0_25]
        at java.lang.ClassLoader.loadClass(Unknown Source) ~[?:1.7.0_25]
        at java.lang.Class.forName0(Native Method) ~[?:1.7.0_25]
        at java.lang.Class.forName(Unknown Source) ~[?:1.7.0_25]
        at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.j
ava:173) ~[craftbukkit.jar:git-Bukkit-1.7.2-R0.2-b2974jnks]
        ... 9 more

我做的一切都是对的!plugin.yml外部罐子和出口,但仍然不起作用。知道为什么吗?

共有2个答案

费明诚
2023-03-14

在 bukkit 中使用 java.lang.Class不发现例外有不同的原因,最常见的原因是插件.yml 没有指向正确的位置。

如果您有以下类别:

package me.flevasgr.rainbow.reporter;
//...
public class Reporter {

然后您应该复制完整的包,放置一个点,然后放置类的名称,如下所示:

main: me.flevasgr.rainbow.reporter.Reporter 

这确保bukkit会在正确的位置找到您的班级。

缪升
2023-03-14

如错误所述,

java.lang.ClassNotFoundException:me.f levasgr.rainbow.Reporter

它找不到你的插件的主类。也许你的包名是大写的,或者你的主类是小写的。Bukkit的插件加载器在加载主类时是区分大小写的。

 类似资料:
  • 了解如何将更多功能添加到 Adobe XD。寻找最新的免费插件,并用以自动执行重复操作或部分冗长、复杂或重复的设计工作流程。 插件 Adobe XD 具备由 Adobe 和第三方开发人员提供的插件和应用程序集成,可自动完成复杂和重复的任务,从而增强您的设计工作流程,并实现与外部工具和服务的深度集成。例如,如果您需要使用 Google Maps,则可以安装并使用第三方插件将其放入您的 XD 项目。了

  • 通过将maven插件添加到eclipse(m2eclipse),项目使用的所有JAR都自动添加到eclipse中来构建项目路径吗?如果不是自动添加,应该怎么做才能将JAR添加到构建路径中?

  • 在我的测试中和通过在沙箱中,一切都运行良好。 我还通过创建一个只包含一个动作的新项目和一个包含一个类和一个空方法的模块,成功地重现了这个错误。 根级: 其他模块类:

  • 想项目中添加插件的新方法不仅仅是一种更为方便的语法.新的DSL语法处理与老方法有很大的不同.新的机制允许Gradle更早更快的确定插件.这允许做更智能的事,如: 优化插件类的加载和重用. 允许不同的插件使用不同版本的依赖关系. 为编辑构建脚本提供关于隐含属性和值的详细信息 这要求插件被指定使Gradle在执行之前剩下的构建脚本前可以很容易并且很快的提取它.还要求插件使用一些静态的定义。 新的插件机

  • 这些插件提供的各种运行时的技术的集成. Table 22.4. Incubating integration plugins Plugin Id 自动应用 协同工作 描述 distribution - - 对构建增加对ZIP和TAR的支持 java-library-distribution java, distribution - 增加了对建筑ZIP和TAR的一个Java库的支持. ivy-pub

  • 这些插件增加对各种语言的支持: Table 22.2. Language plugins Plugin Id 自动应用 协同工作 描述 assembler - - 增加了原生的汇编语言能力的项目。 c - - 添加C源代码编译能力的项目. cpp - - 增加C ++源代码编译能力的项目. objective-c - - 添加的Objective-C ++源代码编译能力的项目. windows-r