为什么当我 运行 我的 JDA 应用程序时,出现 "permission_overwrites" 错误?
Why when i run my JDA application, i got a "permission_overwrites" error?
我用 JDA API 为我的服务器创建了一个机器人 Discord,但是,当我 运行 这个程序时,我遇到了很多这样的错误:
Received a channel for a guild that isn't a text or voice channel. JSON: {"permission_overwrites": /*other*/}
还有堆栈跟踪:
Encountered an exception:
java.lang.RuntimeException: Got permission_override for unknown channel with id: 361465678508851200
at net.dv8tion.jda.core.entities.EntityBuilder.createGuildChannelPass(EntityBuilder.java:394)
at net.dv8tion.jda.core.entities.EntityBuilder.createGuildFirstPass(EntityBuilder.java:281)
at net.dv8tion.jda.core.handle.GuildCreateHandler.handleInternally(GuildCreateHandler.java:39)
at net.dv8tion.jda.core.handle.SocketHandler.handle(SocketHandler.java:38)
at net.dv8tion.jda.core.requests.WebSocketClient.handleEvent(WebSocketClient.java:770)
at net.dv8tion.jda.core.requests.WebSocketClient.onTextMessage(WebSocketClient.java:500)
at net.dv8tion.jda.core.requests.WebSocketClient.onBinaryMessage(WebSocketClient.java:803)
at com.neovisionaries.ws.client.ListenerManager.callOnBinaryMessage(ListenerManager.java:368)
at com.neovisionaries.ws.client.ReadingThread.callOnBinaryMessage(ReadingThread.java:270)
at com.neovisionaries.ws.client.ReadingThread.handleBinaryFrame(ReadingThread.java:990)
at com.neovisionaries.ws.client.ReadingThread.handleFrame(ReadingThread.java:749)
at com.neovisionaries.ws.client.ReadingThread.main(ReadingThread.java:108)
at com.neovisionaries.ws.client.ReadingThread.runMain(ReadingThread.java:64)
at com.neovisionaries.ws.client.WebSocketThread.run(WebSocketThread.java:45)
我 运行 我的申请是这样的 :
JDABuilder builder = new JDABuilder(AccountType.BOT);
builder.setToken("Token");
builder.setAutoReconnect(true);
builder.setStatus(OnlineStatus.DO_NOT_DISTURB);
jda = builder.buildBlocking(); //With try and catch block
bot 仍然正常工作,但是很奇怪。
我按照教程进行操作,得到了相同的结果,频道类别违反了 JDA。
我不得不查看 JDA Github 并更改我的 pom 以匹配最新版本。
将JDA 的版本更改为3.3。1_313。这是撰写本文时的最新版本。这应该可以解决它,因为频道类别是相当新的。如果你没有使用 maven,只需重新下载 jar
我用 JDA API 为我的服务器创建了一个机器人 Discord,但是,当我 运行 这个程序时,我遇到了很多这样的错误:
Received a channel for a guild that isn't a text or voice channel. JSON: {"permission_overwrites": /*other*/}
还有堆栈跟踪:
Encountered an exception:
java.lang.RuntimeException: Got permission_override for unknown channel with id: 361465678508851200
at net.dv8tion.jda.core.entities.EntityBuilder.createGuildChannelPass(EntityBuilder.java:394)
at net.dv8tion.jda.core.entities.EntityBuilder.createGuildFirstPass(EntityBuilder.java:281)
at net.dv8tion.jda.core.handle.GuildCreateHandler.handleInternally(GuildCreateHandler.java:39)
at net.dv8tion.jda.core.handle.SocketHandler.handle(SocketHandler.java:38)
at net.dv8tion.jda.core.requests.WebSocketClient.handleEvent(WebSocketClient.java:770)
at net.dv8tion.jda.core.requests.WebSocketClient.onTextMessage(WebSocketClient.java:500)
at net.dv8tion.jda.core.requests.WebSocketClient.onBinaryMessage(WebSocketClient.java:803)
at com.neovisionaries.ws.client.ListenerManager.callOnBinaryMessage(ListenerManager.java:368)
at com.neovisionaries.ws.client.ReadingThread.callOnBinaryMessage(ReadingThread.java:270)
at com.neovisionaries.ws.client.ReadingThread.handleBinaryFrame(ReadingThread.java:990)
at com.neovisionaries.ws.client.ReadingThread.handleFrame(ReadingThread.java:749)
at com.neovisionaries.ws.client.ReadingThread.main(ReadingThread.java:108)
at com.neovisionaries.ws.client.ReadingThread.runMain(ReadingThread.java:64)
at com.neovisionaries.ws.client.WebSocketThread.run(WebSocketThread.java:45)
我 运行 我的申请是这样的 :
JDABuilder builder = new JDABuilder(AccountType.BOT);
builder.setToken("Token");
builder.setAutoReconnect(true);
builder.setStatus(OnlineStatus.DO_NOT_DISTURB);
jda = builder.buildBlocking(); //With try and catch block
bot 仍然正常工作,但是很奇怪。
我按照教程进行操作,得到了相同的结果,频道类别违反了 JDA。
我不得不查看 JDA Github 并更改我的 pom 以匹配最新版本。
将JDA 的版本更改为3.3。1_313。这是撰写本文时的最新版本。这应该可以解决它,因为频道类别是相当新的。如果你没有使用 maven,只需重新下载 jar