我试图让这个程序在运行 3 次后自行取消,但我不断收到“局部变量 taskId 可能尚未初始化”错误。因为其中一个是危险的。二尽管出现编译器错误,我仍然可以正确编译并运行程序吗?最后我将如何解决这个问题?谢谢!
final int taskId = plugin.getServer().getScheduler().scheduleSyncDelayedTask(plugin, new Runnable() {
int count = 0;
@Override
public void run() {
((LivingEntity) e.getEntity()).damage(2);
count++;
if (count > 2) {
Bukkit.getScheduler().cancelTask(taskId);
}
}
}, 60L);