From ed872072f70c5956bbe1eafc4c5834830309be23 Mon Sep 17 00:00:00 2001 From: google-java-format Team Date: Thu, 10 Sep 2026 04:22:04 -0700 Subject: [PATCH] Use inherited EMPTY_RANGE in JavaOutput to eliminate Formatter dependency. This change replaces Formatter.EMPTY_RANGE references in JavaOutput with the inherited InputOutput.EMPTY_RANGE constant. Referencing Formatter dynamically loads javac AST classes depending on com.sun.source.tree.Tree, which causes NoClassDefFoundError in applications executing on JRE runtimes lacking the jdk.compiler module. PiperOrigin-RevId: 979102692 --- .../java/com/google/googlejavaformat/java/JavaOutput.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/core/src/main/java/com/google/googlejavaformat/java/JavaOutput.java b/core/src/main/java/com/google/googlejavaformat/java/JavaOutput.java index 6023065e3..497f8cff6 100644 --- a/core/src/main/java/com/google/googlejavaformat/java/JavaOutput.java +++ b/core/src/main/java/com/google/googlejavaformat/java/JavaOutput.java @@ -163,7 +163,7 @@ public void append(String text, Range range) { if (!range.isEmpty()) { if (!rangesSet) { while (ranges.size() <= mutableLines.size()) { - ranges.add(Formatter.EMPTY_RANGE); + ranges.add(EMPTY_RANGE); } ranges.set(mutableLines.size(), union(ranges.get(mutableLines.size()), range)); rangesSet = true; @@ -191,7 +191,7 @@ public void flush() { int jN = mutableLines.size(); Range eofRange = Range.closedOpen(kN, kN + 1); while (ranges.size() < jN) { - ranges.add(Formatter.EMPTY_RANGE); + ranges.add(EMPTY_RANGE); } ranges.add(eofRange); setLines(ImmutableList.copyOf(mutableLines));