JDA setSendingHandler没有为类型Guild定义

时间:2017-01-11 13:29:55

标签: java discord

我正在使用JDA(Java)为Discord创建一个bot。我试图让我的机器人在我的语音频道播放音乐时遇到问题。

问题出在以下代码中

public static void startPlaying(net.dv8tion.jda.core.entities.Guild guild) {
    //Player player = getMyURLPlayer(guild.getJDA());
    FilePlayer player = getMyFilePlayer();

    //DiscordBot.bot.getAudioManager(guild).setSendingHandler(player);
    guild.setSendingHandler(player);
    System.out.println("Player.play is getting executed...");
    player.play();
}

在上面的代码中,根据eclipse

,以下行不正确
guild.setSendingHandler(player);

它说

The method setSendingHandler(FilePlayer) is undefined for the type Guild

1 个答案:

答案 0 :(得分:4)

我假设您根据您发布的代码引用http://jda.readthedocs.io/en/latest/pages/audio.html。该网站上的文档已经过时了。它不仅不完整而且略有不正确,它也适用于JDA 1.x. JDA目前处于3.x并且已经发生了重大变化。

此外,FilePlayer(和URLPlayer)已完全从JDA中删除,因为它们不完整且略有错误。要正确实施AudioSendHandler和播放器系统,请考虑使用Lavaplayer

Lavaplayer有一个JDA here

的示例目录

如果您有任何疑问,请随时加入JDA Discord Guild并提问。还有一个特别为Lavaplayer支持的频道。