Answers:
看来您只能从该方法抛出RuntimeException orElseThrow。否则,您会收到一条错误消息,例如 MyException cannot be converted to java.lang.RuntimeException
更新:-这是旧版JDK的问题。我没有在最新版本中看到此问题。
OptionalGroovy 时无法使用。尝试throw Exception从常规的闭包开始,但由于失败java.lang.reflect.UndeclaredThrowableException,更改为RuntimeException固定的。
optionalUsers.orElseThrow(() -> new UsernameNotFoundException("Username not found"));
orElseThrow(() -> new MyException(someArgument))呢?