线程“主”java.lang.NoClassDefFoundError 中的异常:net/dv8tion/jda/api/JDABuilder

Posted

技术标签:

【中文标题】线程“主”java.lang.NoClassDefFoundError 中的异常:net/dv8tion/jda/api/JDABuilder【英文标题】:Exception in thread "main" java.lang.NoClassDefFoundError: net/dv8tion/jda/api/JDABuilder 【发布时间】:2021-11-28 03:24:19 【问题描述】:

您好,第一次发帖,如果不好,请见谅 我一直遇到这个错误代码,我尝试重新安装不同版本的 JDA,唯一有效的是 JDA-4.3.0_333,我正在使用 eclipse。我什至将 eclipse 重新安装到了开发者版本。我已经重新编写和重写了多次遇到相同的错误

在三个StringsMusicBot.StartUp.main(StartUp.java:11) 引起:java.lang.ClassNotFoundException:net.dv8tion.jda.api.JDABuilder 在 java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:641) 在 java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:188) 在 java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:520)

package threeStringsMusicBot;

import javax.security.auth.login.LoginException;

import net.dv8tion.jda.api.JDABuilder;
import net.dv8tion.jda.api.OnlineStatus;
import net.dv8tion.jda.api.entities.Activity;

public class StartUp 
    public static void main(String[] args) throws LoginException //Login Exception allows for bot to log into bot account'
        JDABuilder threeStrings = JDABuilder.createDefault("#######"); //create new bot with JDABuilder class and give it our bot token
        threeStrings.setActivity(Activity.playing("The Lute!")); //set bot activity
        threeStrings.setStatus(OnlineStatus.ONLINE); //set bit status to online
        threeStrings.build(); //build(); function calls for bot to login
        
    


【问题讨论】:

想通了,我需要使用 JAVA 1.8 请关闭您的问题。 【参考方案1】:

需要使用 JAVA 1.8,我之前使用的是当前版本的 java,但这个版本的 JDA 需要 java 1.8。

【讨论】:

以上是关于线程“主”java.lang.NoClassDefFoundError 中的异常:net/dv8tion/jda/api/JDABuilder的主要内容,如果未能解决你的问题,请参考以下文章

主线程啥都没做,就会等待子线程结束。这是为啥?

Android 异步操作Android 线程切换 ( 判定当前线程是否是主线程 | 子线程中执行主线程方法 | 主线程中执行子线程方法 )

子线程怎么不阻塞主线程

QT中UI主窗口如何与子线程相互传递参数

java 子线程 回调 主线程

C++怎么在主线程中使用子线程的数据? 比如说主线程中有一个数组,如何在子线程中调用这个数组