java - 为什么事件没有被激活,即使我有一个监听器和@EvenHandler?
问题描述
所以我正在开发一个插件,但我的任何事件都没有被激活。
例如,我有这个事件:
@EventHandler
public void onPlayerDeath(PlayerDeathEvent event){
Bukkit.getBanList(BanList.Type.NAME).addBan(event.getEntity().getName(), "Du bist hiermit aus Combat ausgeschieden!", null, "");
}
它在一个类中,该类被实现为侦听器。这就是在我的类中扩展 JavaPlugin(EditTeams 是监听器):
EditTeams events = new EditTeams();
public void onEnable(){
Bukkit.getPluginManager().registerEvents(events, this);
}
我环顾四周,但找不到问题所在。
解决方案
只需将@Override
注释添加到您的onEnable()
方法中。如果这不起作用,只需测试调用哪些方法
EditTeams events = new EditTeams();
public void onEnable(){
System.out.println("OnEnable() triggered");
Bukkit.getPluginManager().registerEvents(events, this);
}
@EventHandler
public void onPlayerDeath(PlayerDeathEvent event){
System.out.println("PlayerDeathEvent Triggered.");
Bukkit.getBanList(BanList.Type.NAME).addBan(event.getEntity().getName(), "Du bist hiermit aus Combat ausgeschieden!", null, "");
}
您的 Sysout 中是否有任何异常/堆栈跟踪?
推荐阅读
- linux - 重新创建文件会重用以前的 inode 吗?
- javafx - 无法使用场景构建器制作 jfoenix 库的 JDialogBox
- shell - Linux 脚本命令一启动就终止
- r - H2O 深度学习模型结果,dropout 缩小
- javascript - 使用 node.js 运行 Angular 项目
- multithreading - 通过 pthread_cond_broadcast 触发多个 pthread
- android - “重新运行失败的测试”时Android Studio“在包中找到0个测试类”
- python - 运行从 Microsoft Flow 触发的 Python
- typescript - 类型脚本装饰器错误 TS1241:作为表达式调用时无法解析方法装饰器的签名
- java - 文本对齐算法