From 6618e976c974f9764e87583f490da194b06bc7e2 Mon Sep 17 00:00:00 2001 From: Cyberarm Date: Sun, 17 Dec 2023 13:03:05 -0600 Subject: [PATCH] Possibly fix unhelpful error message when using CyberarmEngine#setupFromConfig --- .../dev/cyberarm/engine/V2/CyberarmEngine.java | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/TeamCode/src/main/java/dev/cyberarm/engine/V2/CyberarmEngine.java b/TeamCode/src/main/java/dev/cyberarm/engine/V2/CyberarmEngine.java index 1837c0a..8b79301 100644 --- a/TeamCode/src/main/java/dev/cyberarm/engine/V2/CyberarmEngine.java +++ b/TeamCode/src/main/java/dev/cyberarm/engine/V2/CyberarmEngine.java @@ -499,13 +499,27 @@ public abstract class CyberarmEngine extends OpMode { lastActionName = action.name; lastActionNameSplit = lastActionName.split("-"); } - } catch (ClassNotFoundException | NoSuchMethodException | IllegalAccessException | InstantiationException | InvocationTargetException e) { + } catch (ClassNotFoundException | NoSuchMethodException | IllegalAccessException e) { e.printStackTrace(); RuntimeException exception = new RuntimeException(e.getMessage(), e.getCause()); exception.setStackTrace(e.getStackTrace()); throw(exception); + } catch (InvocationTargetException | InstantiationException e) { + Throwable cause = e.getCause(); + + if (cause != null) { + cause.printStackTrace(); + + RuntimeException exception = new RuntimeException(cause.getMessage(), cause.getCause()); + exception.setStackTrace(cause.getStackTrace()); + } else { + e.printStackTrace(); + + RuntimeException exception = new RuntimeException(e.getMessage(), e.getCause()); + exception.setStackTrace(e.getStackTrace()); + } } } }