Java 不和谐JDA OnReady不';行不通
我正在使用JDA(Java)为Discord创建一个机器人。在java控制台上尝试简单调试消息时,我遇到了一个问题。 我想打印“机器人运行”,但不起作用。它不打印 问题出在onReady()中,请查看代码Java 不和谐JDA OnReady不';行不通,java,discord,Java,Discord,我正在使用JDA(Java)为Discord创建一个机器人。在java控制台上尝试简单调试消息时,我遇到了一个问题。 我想打印“机器人运行”,但不起作用。它不打印 问题出在onReady()中,请查看代码 public class MessageListener extends ListenerAdapter { public static void main(String[] args) throws LoginException, RateLimitedExceptio
public class MessageListener extends ListenerAdapter
{
public static void main(String[] args)
throws LoginException, RateLimitedException, InterruptedException
{
JDA jda = new JDABuilder(AccountType.BOT).setToken("x").buildBlocking();
jda.addEventListener(new MessageListener());
}
@Override
public void onMessageReceived(MessageReceivedEvent event)
{
if (event.isFromType(ChannelType.PRIVATE))
{
System.out.printf("[PM] %s: %s\n", event.getAuthor().getName(),
event.getMessage().getContent());
}
}
@Override
public void onReady(ReadyEvent e){
String server = "bot running\n";
System.out.println(server);
}
}
编辑:
代码更新
Sry我把代码弄乱了,但“OnReady”不起作用。它应该在加载bot时起作用,因为您是在bot启动后添加侦听器的。当您在jda上调用buildBlocking时,Bot将启动并阻塞该线程。因此,永远不会添加侦听器
JDABuilder builder = new JDABuilder(AccountType.BOT);
builder.setToken("x");
builder.addEventListener(new MessageListener());
JDA jda = builder.buildBlocking();
您在哪里调用
ReadyListener
?请提供一个最小的,完整的,可验证的,更好的答案的例子-Sry我搞砸了代码欢迎堆栈溢出!在尝试提出更多问题之前,请阅读。欢迎使用堆栈溢出!在尝试提出更多问题之前,请先阅读。您应该将其编辑到您的答案中。答案(和问题)应独立,无需阅读评论;您可能还注意到注释并不适用于代码块。请在尝试回答更多问题之前阅读。