diff --git a/bndtools.core/src/bndtools/launch/util/LaunchUtils.java b/bndtools.core/src/bndtools/launch/util/LaunchUtils.java index 927338d6f6..8389dc83e5 100644 --- a/bndtools.core/src/bndtools/launch/util/LaunchUtils.java +++ b/bndtools.core/src/bndtools/launch/util/LaunchUtils.java @@ -68,6 +68,7 @@ public static Run createRun(ILaunchConfiguration configuration, RunMode mode) th public static Run createRun(IResource targetResource, RunMode mode) throws Exception { Run run = null; + String error = null; for (RunProvider runProvider : getRunProviders()) { try { if ((run = runProvider.create(targetResource, mode)) != null) { @@ -76,6 +77,9 @@ public static Run createRun(IResource targetResource, RunMode mode) throws Excep } catch (CoreException e) { StatusManager.getManager() .handle(e.getStatus(), StatusManager.BLOCK); + } catch (IllegalStateException ise) { + error = ise.getMessage(); + logger.logError("Error in run listener", ise); } catch (Throwable t) { logger.logError("Error in run listener", t); } @@ -86,6 +90,9 @@ public static Run createRun(IResource targetResource, RunMode mode) throws Excep targetResource.getLocation())); } + if (error != null) { + run.error(error); + } RunMode.set(run, mode); for (RunListener runListener : getRunListeners()) { diff --git a/bndtools.m2e/src/bndtools/m2e/MavenRunProvider.java b/bndtools.m2e/src/bndtools/m2e/MavenRunProvider.java index 580cad28f3..9b9d5b2549 100644 --- a/bndtools.m2e/src/bndtools/m2e/MavenRunProvider.java +++ b/bndtools.m2e/src/bndtools/m2e/MavenRunProvider.java @@ -139,8 +139,10 @@ private Bndrun create0(IResource targetResource, IMavenProjectFacade projectFaca return mavenBndrunContainer.init(bndrunFile, mode.name(), new File(mavenProject.getBuild() .getDirectory())); + } else { + throw new IllegalStateException(String + .format("Cannot find a resolver configuration for '%s' in pom.xml.", targetResource.getName())); } - break; case TEST : if ((mojoExecution = getBndTestingMojoExecution(maven, projectFacade, bndrunMatchs, monitor)) != null) {