diff --git a/plugin-maven/CHANGES.md b/plugin-maven/CHANGES.md
index 34922ebf0a..800df98dd3 100644
--- a/plugin-maven/CHANGES.md
+++ b/plugin-maven/CHANGES.md
@@ -3,6 +3,14 @@
We adhere to the [keepachangelog](https://keepachangelog.com/en/1.0.0/) format (starting after version `1.27.0`).
## [Unreleased]
+### Fixed
+* Remove Java files from default Maven Groovy formatting ([#1051](https://github.com/diffplug/spotless/pull/1051)).
+ * Before this release, the default target of groovy was
+ * `src/main/groovy/**/*.groovy`
+ * `src/test/groovy/**/*.groovy`
+ * `src/main/java/**/*.java`
+ * `src/test/java/**/*.java`
+ * This release removes the `.java` includes.
## [2.18.0] - 2021-12-23
### Added
diff --git a/plugin-maven/README.md b/plugin-maven/README.md
index 9c5a20b5ab..316291d38a 100644
--- a/plugin-maven/README.md
+++ b/plugin-maven/README.md
@@ -246,8 +246,6 @@ This is a workaround to a [pending issue](https://github.com/diffplug/spotless/i
src/main/groovy/**/*.groovy
src/test/groovy/**/*.groovy
- src/main/java/**/*.java
- src/test/java/**/*.java
diff --git a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java
index efd8b15cad..e9b3c6c412 100644
--- a/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java
+++ b/plugin-maven/src/main/java/com/diffplug/spotless/maven/groovy/Groovy.java
@@ -1,5 +1,5 @@
/*
- * Copyright 2020 DiffPlug
+ * Copyright 2020-2021 DiffPlug
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
@@ -29,7 +29,7 @@
*/
public class Groovy extends FormatterFactory {
- private static final Set DEFAULT_INCLUDES = ImmutableSet.of("src/main/groovy/**/*.groovy", "src/test/groovy/**/*.groovy", "src/main/java/**/*.java", "src/test/java/**/*.java");
+ private static final Set DEFAULT_INCLUDES = ImmutableSet.of("src/main/groovy/**/*.groovy", "src/test/groovy/**/*.groovy");
private static final String LICENSE_HEADER_DELIMITER = "package ";
@Override
diff --git a/plugin-maven/src/test/java/com/diffplug/spotless/maven/generic/LicenseHeaderTest.java b/plugin-maven/src/test/java/com/diffplug/spotless/maven/generic/LicenseHeaderTest.java
index 16be28e6f3..92d74bc659 100644
--- a/plugin-maven/src/test/java/com/diffplug/spotless/maven/generic/LicenseHeaderTest.java
+++ b/plugin-maven/src/test/java/com/diffplug/spotless/maven/generic/LicenseHeaderTest.java
@@ -60,7 +60,11 @@ void fromContentGroovy() throws Exception {
"// Does it help to have it in writing?",
" ",
"");
- runTest();
+
+ String path = "src/main/groovy/test.groovy";
+ setFile(path).toResource("license/MissingLicense.test");
+ mavenRunner().withArguments("spotless:apply").runNoError();
+ assertFile(path).sameAsResource("license/HasLicense.test");
}
@Test
diff --git a/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/GrEclipseTest.java b/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/GrEclipseTest.java
index 9c95b73fd1..8807f47cc9 100644
--- a/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/GrEclipseTest.java
+++ b/plugin-maven/src/test/java/com/diffplug/spotless/maven/groovy/GrEclipseTest.java
@@ -15,6 +15,8 @@
*/
package com.diffplug.spotless.maven.groovy;
+import java.io.IOException;
+
import org.junit.jupiter.api.Test;
import com.diffplug.spotless.maven.MavenIntegrationHarness;
@@ -23,16 +25,43 @@ class GrEclipseTest extends MavenIntegrationHarness {
@Test
void testEclipse() throws Exception {
- writePomWithGroovySteps(
- "",
- " ${basedir}/greclipse.properties",
- " 4.12.0",
- "");
- setFile("greclipse.properties").toResource("groovy/greclipse/format/greclipse.properties");
+ writePomWithGrEclipse();
String path = "src/main/groovy/test.groovy";
setFile(path).toResource("groovy/greclipse/format/unformatted.test");
mavenRunner().withArguments("spotless:apply").runNoError();
assertFile(path).sameAsResource("groovy/greclipse/format/formatted.test");
}
+
+ @Test
+ void doesNotFormatJavaFiles() throws Exception {
+ writePomWithGrEclipse();
+
+ String javaPath = "src/main/java/test.java";
+ String testJavaPath = "src/test/java/test.java";
+ setFile(javaPath).toResource("java/googlejavaformat/JavaCodeUnformatted.test");
+ setFile(testJavaPath).toResource("java/googlejavaformat/JavaCodeUnformatted.test");
+
+ String groovyPath = "src/main/groovy/test.groovy";
+ String testGroovyPath = "src/test/groovy/test.groovy";
+ setFile(groovyPath).toResource("groovy/greclipse/format/unformatted.test");
+ setFile(testGroovyPath).toResource("groovy/greclipse/format/unformatted.test");
+
+ mavenRunner().withArguments("spotless:apply").runNoError();
+
+ assertFile(javaPath).sameAsResource("java/googlejavaformat/JavaCodeUnformatted.test");
+ assertFile(testJavaPath).sameAsResource("java/googlejavaformat/JavaCodeUnformatted.test");
+
+ assertFile(groovyPath).sameAsResource("groovy/greclipse/format/formatted.test");
+ assertFile(testGroovyPath).sameAsResource("groovy/greclipse/format/formatted.test");
+ }
+
+ private void writePomWithGrEclipse() throws IOException {
+ writePomWithGroovySteps(
+ "",
+ " ${basedir}/greclipse.properties",
+ " 4.19.0",
+ "");
+ setFile("greclipse.properties").toResource("groovy/greclipse/format/greclipse.properties");
+ }
}