当前位置: 首页 > 知识库问答 >
问题:

从几天前开始,JDA guild.getmembers()不再获得所有成员

宗政学
2023-03-14
for (Member member : guild.getMembers()) {
 // code
}

这不再起作用,它只循环通过大约4个成员才停止。自从补丁之后,我需要添加什么新的东西吗?我注释了整个循环主体,只放了一个system.println member.geteffectiveName(),每次只打印4个名字,当有大约80人不和时。

共有1个答案

东郭宏深
2023-03-14

您将需要缓存成员以循环访问它们。当使用getmember()getmemberbyid()等方法时,除非它是guild的所有者或bot本身,否则它为空。

当使用createlight()createDefault()构建JDA时,默认情况下禁用成员缓存和成员分块。

像User class这样的东西不能为null,因为它是由discord提供的

 类似资料:
  • 问题内容: 我有含有天自变量历元基准日期的用于某一日期。 有人知道将该变量转换为a的方法吗? 问题答案: 以下应该工作: 关于时区的注释: 使用程序运行所在系统的默认时区创建一个新实例。由于Epoch是相对于UTC(Java中的GMT)的,因此必须谨慎处理与UTC不同的任何时区。以下程序说明了该问题: 此打印 这表明仅使用eg是不够的。在这种情况下,必须始终考虑到一天中的什么时间。这可以通过显式使

  • 我想做一个命令,告诉我机器人所在的服务器中的用户总数。我搜索了一下怎么做,发现是这样的: 但当我使用它时,机器人告诉我它只为一个用户服务。

  • 问题内容: 好了,那么,从这里开始,这里是我的代码: 因此出现错误,因为我试图在API调用中初始化temp。我知道这不是最可靠的方法,但我正在尝试首先使其起作用。 第一个错误是: 在初始化所有成员之前,闭包捕获了“自我” 在线上 我的第二个错误: 从初始化程序返回而不初始化所有存储的属性 在倒数第二 现在,显然我没有初始化正确。但是,我找不到执行最终目标的正确方法。也许我这样做完全错误? 问题答案

  • 也许我想多了。我想每周一上午9点发送本地通知,直到满足某些条件。我知道这可以通过设置的和组件来完成。我遇到的问题是我将传递给的值取决于正在使用的。如果我理解正确,则取决于用户的设置。例如,如果用户的日历周从周日开始,我会传递1到,但如果一周从周六开始,我会传递2。 我的问题是,我该如何解释时区、夏令时和周开始日之类的事情?

  • 问题内容: 我设置了两个箭头,单击第二天,第二天,不久和前一天(两天前,不久)。该代码似乎无法正常工作?因为第二天和前一天只有一个。 有没有一种方法,如果我单击“下一步”按钮,则日期将在第二天连续更改。暂时只有一天 问题答案: 应该读 更新以回答评论中有关连续更改日期的问题。 这会将日期从您当时的日期起增加或减少一倍。

  • 问题内容: 我有当前日期,还有一个常数,它指示星期几。我想基于该常数获取一周的开始日期。如果我将一周的第一天硬编码为星期一(或其他任何东西),那么这很简单。但是一周的第一天一直在变化。因此,我不想在每次更改第一天时都更改代码。 这是我尝试使用Java的Calendar的方法: 我想获取一周的开始日期。上面的函数返回星期的第一天,并且星期开始日期被硬编码为星期六。每当星期开始日期以上的要求发生变化时