Java Discord API命令不打印任何内容
所以我对这个JDA库非常陌生,但我精通Java。我就是不明白为什么下面的代码不起作用。我有一个Init类和一个commands类 初始化类:Java Discord API命令不打印任何内容,java,discord,bots,discord-jda,Java,Discord,Bots,Discord Jda,所以我对这个JDA库非常陌生,但我精通Java。我就是不明白为什么下面的代码不起作用。我有一个Init类和一个commands类 初始化类: package corp.vjz.bots.discord.testbot; import javax.security.auth.login.LoginException; import net.dv8tion.jda.api.JDA; import net.dv8tion.jda.api.JDABuilder; import net.dv8tion
package corp.vjz.bots.discord.testbot;
import javax.security.auth.login.LoginException;
import net.dv8tion.jda.api.JDA;
import net.dv8tion.jda.api.JDABuilder;
import net.dv8tion.jda.api.OnlineStatus;
public class Initialize {
public static void main(String[] args) throws LoginException {
//starts the discord robot
JDA jda = JDABuilder.createDefault("NzIyMTMyNjczOTkyMzI3MzEw.Xueodg.EpeszQDFxc1IM21_CZmKMUv7Wys").build();
//sets the status of the discord robot
jda.getPresence().setStatus(OnlineStatus.ONLINE);
//add a new event listener
jda.addEventListener(new Commands());
}
}
这是我的命令类:
package corp.vjz.bots.discord.testbot;
import net.dv8tion.jda.api.events.message.guild.GuildMessageReceivedEvent;
import net.dv8tion.jda.api.hooks.ListenerAdapter;
public class Commands extends ListenerAdapter {
private static String PREFIX = "-";
public void onGuildMsgReceived(GuildMessageReceivedEvent event) {
//parse through message
String[] args = event.getMessage().getContentRaw().split("\\s+");
if (args[0].equalsIgnoreCase(Commands.PREFIX + "info")) {
event.getChannel().sendTyping().queue();
event.getChannel().sendMessage("Wassup! BRO.").queue();
}
}
}
这应该是“Wassup!BRO.”当用户聊天时,-info“,但实际上,什么都没有显示。是的,我确实邀请了discord机器人,做了Oauth2,不管怎样,这一切都很好,只是我不知道为什么它不打印它应该打印的内容。您没有为if命令编写else代码 您没有从ListenerAdapter重写该方法。引自: 4。您没有覆盖正确的方法?
使用
@Override
查看是否失败。您的方法必须使用ListenerAdapter中定义的正确名称和参数列表
因此,正确的方法名称记录在其中,其中是onGuildMessageReceived