diff --git a/rewrite-maven/src/main/java/org/openrewrite/maven/MavenParser.java b/rewrite-maven/src/main/java/org/openrewrite/maven/MavenParser.java index 89f18618ff..c37f373f0c 100644 --- a/rewrite-maven/src/main/java/org/openrewrite/maven/MavenParser.java +++ b/rewrite-maven/src/main/java/org/openrewrite/maven/MavenParser.java @@ -77,7 +77,7 @@ public Stream parseInputs(Iterable sources, @Nullable Path re Pom pom = RawPom.parse(source.getSource(ctx), null) .toPom(pomPath, null); - if (pom.getProperties() == null || pom.getProperties().isEmpty()) { + if (pom.getProperties().isEmpty()) { pom = pom.withProperties(new LinkedHashMap<>()); } String baseDir = pomPath.toAbsolutePath().getParent().toString(); @@ -117,15 +117,14 @@ public Stream parseInputs(Iterable sources, @Nullable Path re } parsed.add(docToPom.getKey().withMarkers(docToPom.getKey().getMarkers().compute(model, (old, n) -> n))); } catch (MavenDownloadingExceptions e) { - ParseExceptionResult parseExceptionResult = new ParseExceptionResult( - randomId(), - MavenParser.class.getSimpleName(), - e.getClass().getSimpleName(), - e.warn(docToPom.getKey()).printAll(), // Shows any underlying MavenDownloadingException - null); - parsed.add(docToPom.getKey().withMarkers(docToPom.getKey().getMarkers().add(parseExceptionResult))); + String message = e.warn(docToPom.getKey()).printAll(); // Shows any underlying MavenDownloadingException + parsed.add(docToPom.getKey().withMarkers(docToPom.getKey().getMarkers().add(ParseExceptionResult.build(this, e, message)))); ctx.getOnError().accept(e); - } catch (MavenDownloadingException | UncheckedIOException e) { + } catch (MavenDownloadingException e) { + String message = e.warn(docToPom.getKey()).printAll(); // Shows any underlying MavenDownloadingException + parsed.add(docToPom.getKey().withMarkers(docToPom.getKey().getMarkers().add(ParseExceptionResult.build(this, e, message)))); + ctx.getOnError().accept(e); + } catch (UncheckedIOException e) { parsed.add(docToPom.getKey().withMarkers(docToPom.getKey().getMarkers().add(ParseExceptionResult.build(this, e)))); ctx.getOnError().accept(e); }