
The user can handle exceptions of a specified type occurring in a chained runnable by calling `executeCatching` and optionally passing a handler function. This is needed needed in order to gracefully stop the execution of a runnable chain without the exception being caught by Bukkit and resulting in it being logged as uncaught, while also allowing further handling of the exception.