diff options
Diffstat (limited to 'org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/builder/BuildProblemInfo.java')
-rw-r--r-- | org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/builder/BuildProblemInfo.java | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/builder/BuildProblemInfo.java b/org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/builder/BuildProblemInfo.java index 40e989b5..9d91bbe3 100644 --- a/org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/builder/BuildProblemInfo.java +++ b/org.eclipse.m2e.core/src/org/eclipse/m2e/core/internal/builder/BuildProblemInfo.java @@ -11,6 +11,8 @@ package org.eclipse.m2e.core.internal.builder; +import com.google.common.base.Throwables; + import org.eclipse.m2e.core.internal.markers.MavenProblemInfo; import org.eclipse.m2e.core.internal.markers.SourceLocation; import org.eclipse.m2e.core.project.configurator.MojoExecutionKey; @@ -18,7 +20,15 @@ import org.eclipse.m2e.core.project.configurator.MojoExecutionKey; class BuildProblemInfo extends MavenProblemInfo { public BuildProblemInfo(Throwable error, MojoExecutionKey mojoExecutionKey, SourceLocation markerLocation) { - super( - error.getMessage() + (mojoExecutionKey == null ? "" : " (" + mojoExecutionKey.getKeyString() + ')'), markerLocation); //$NON-NLS-1$ + super(formatMessage(error, mojoExecutionKey), markerLocation); //$NON-NLS-1$ + } + + private static String formatMessage(Throwable error, MojoExecutionKey mojoExecutionKey) { + StringBuilder msg = new StringBuilder(error.getMessage()); + if(mojoExecutionKey != null) { + msg.append(" (").append(mojoExecutionKey.getKeyString()).append(')'); + } + msg.append("\n\n").append(Throwables.getStackTraceAsString(error)); + return msg.toString(); } } |