我使用的是Spigot 1.14,当我尝试单击库存中或没有物品的库存之外时,出现错误。

我尝试了不同的方法,例如:

e.getCurrentItem().getItemMeta().getDisplayName()
e.getCurrentItem().getItemMeta().hasDisplayName()


和其他一些方法,但似乎都不起作用。

if (e.getCurrentItem().getItemMeta().getDisplayName() != null && (e.getCurrentItem().getItemMeta().getDisplayName().equalsIgnoreCase("§eMystery Box"))) {


当我在库存外部或没有物品的库存中单击时,出现以下错误消息:https://pastebin.com/v0wDB2gp

说它无法通过广告资源点击事件。

最佳答案

从代码和stacktrace,我可以说的是e.getCurrentItem().getItemMeta()e.getCurrentItem()返回null
堆栈跟踪

Could not pass event InventoryClickEvent to MysteryBox v1.0-SNAPSHOT
org.bukkit.event.EventException: null
        ...
Caused by: java.lang.NullPointerException
        at com.chefren.mysterybox.clickevent.onclick(clickevent.java:23) ~[?:?]
        ...


也可以看看
What is a stack trace, and how can I use it to debug my application errors?
What is a NullPointerException, and how do I fix it?

10-06 02:10