diff --git a/impl/maven-cli/src/test/java/org/apache/maven/cling/invoker/mvn/MavenInvokerTestSupport.java b/impl/maven-cli/src/test/java/org/apache/maven/cling/invoker/mvn/MavenInvokerTestSupport.java index 49b3f852759a..a50bc24b6104 100644 --- a/impl/maven-cli/src/test/java/org/apache/maven/cling/invoker/mvn/MavenInvokerTestSupport.java +++ b/impl/maven-cli/src/test/java/org/apache/maven/cling/invoker/mvn/MavenInvokerTestSupport.java @@ -109,14 +109,20 @@ protected Map invoke(Path cwd, Path userHome, Collection ByteArrayOutputStream stderr = new ByteArrayOutputStream(); List mvnArgs = new ArrayList<>(args); mvnArgs.add(goal); - int exitCode = invoker.invoke( - parser.parseInvocation(ParserRequest.mvn(mvnArgs, new JLineMessageBuilderFactory()) - .cwd(cwd) - .userHome(userHome) - .stdOut(stdout) - .stdErr(stderr) - .embedded(true) - .build())); + int exitCode = -1; + Exception exception = null; + try { + exitCode = invoker.invoke( + parser.parseInvocation(ParserRequest.mvn(mvnArgs, new JLineMessageBuilderFactory()) + .cwd(cwd) + .userHome(userHome) + .stdOut(stdout) + .stdErr(stderr) + .embedded(true) + .build())); + } catch (Exception e) { + exception = e; + } // dump things out System.out.println("==================================================="); @@ -132,7 +138,11 @@ protected Map invoke(Path cwd, Path userHome, Collection System.err.println("==================================================="); logs.put(goal, stdout.toString()); - assertEquals(0, exitCode, "OUT:" + stdout + "\nERR:" + stderr); + if (exception != null) { + throw exception; + } else { + assertEquals(0, exitCode, "OUT:" + stdout + "\nERR:" + stderr); + } } } return logs;