You need to include a maven plugin that supports Googles Java format. It seems like your goal verifyGoogleJavaFormat is available for Gradle, but not for Maven. One option is to use https://github.com/Cosium/git-code-format-maven-plugin. It supports format verification and automatic formatting upon comitting.

The Github Repo documentation states that you can include it in your pom.xml like this:

<build>
    <plugins>
        <plugin>
            <groupId>com.cosium.code</groupId>
            <artifactId>git-code-format-maven-plugin</artifactId>
            <version>3.3</version>
            <executions>
                <!-- On commit, format the modified java files -->
                <execution>
                    <id>install-formatter-hook</id>
                    <goals>
                        <goal>install-hooks</goal>
                    </goals>
                </execution>
                <!-- On Maven verify phase, fail if any file
                (including unmodified) is badly formatted -->
                <execution>
                    <id>validate-code-format</id>
                    <goals>
                        <goal>validate-code-format</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

Now, when I run mvn verify on my unformatted project I get an error:

[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  6.090 s
[INFO] Finished at: 2022-03-12T17:56:13+01:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.cosium.code:git-code-format-maven-plugin:3.3:validate-code-format (validate-code-format) on project javatest: /home/bisensee/repos/javatest/src/main/java/Position.java is not correctly formatted ! -> [Help 1] 

When we make our next commit the formatter is automatically applied via a Git hook and the next mvn verify succeeds.

Answer from Bastis Programming Corner on Stack Overflow
🌐
GitHub
github.com › google › google-java-format
GitHub - google/google-java-format: Reformats Java source code to comply with Google Java Style. · GitHub
August 14, 2026 - The formatter can be used in software which generates java to output more legible java code. Just include the library in your maven/gradle/etc. configuration. google-java-format uses internal javac APIs for parsing Java source.
Author: google
Top answer
1 of 1
3

You need to include a maven plugin that supports Googles Java format. It seems like your goal verifyGoogleJavaFormat is available for Gradle, but not for Maven. One option is to use https://github.com/Cosium/git-code-format-maven-plugin. It supports format verification and automatic formatting upon comitting.

The Github Repo documentation states that you can include it in your pom.xml like this:

<build>
    <plugins>
        <plugin>
            <groupId>com.cosium.code</groupId>
            <artifactId>git-code-format-maven-plugin</artifactId>
            <version>3.3</version>
            <executions>
                <!-- On commit, format the modified java files -->
                <execution>
                    <id>install-formatter-hook</id>
                    <goals>
                        <goal>install-hooks</goal>
                    </goals>
                </execution>
                <!-- On Maven verify phase, fail if any file
                (including unmodified) is badly formatted -->
                <execution>
                    <id>validate-code-format</id>
                    <goals>
                        <goal>validate-code-format</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

Now, when I run mvn verify on my unformatted project I get an error:

[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  6.090 s
[INFO] Finished at: 2022-03-12T17:56:13+01:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal com.cosium.code:git-code-format-maven-plugin:3.3:validate-code-format (validate-code-format) on project javatest: /home/bisensee/repos/javatest/src/main/java/Position.java is not correctly formatted ! -> [Help 1] 

When we make our next commit the formatter is automatically applied via a Git hook and the next mvn verify succeeds.

🌐
GitHub
github.com › harvanir › maven-google-java-format
GitHub - harvanir/maven-google-java-format
Run mvn com.coveo:fmt-maven-plugin:format command to format all the java files (src & test).
Author: harvanir
🌐
Maven Repository
mvnrepository.com › artifact › com.google.googlejavaformat › google-java-format
Maven Repository: com.google.googlejavaformat » google-java-format
July 30, 2026 - A Java source code formatter that follows Google Java Style. ... aar android apache api arm assets build build-system bundle client clojure cloud config cran data database eclipse example extension framework github gradle groovy io ios javascript jvm kotlin library logging macos maven mobile ...
🌐
Maven Repository
mvnrepository.com › artifact › com.github.google.google-java-format
Maven Repository: com.github.google.google-java-format
A Java source code formatter that follows Google Java Style. ... aar android apache api arm assets build build-system bundle client clojure cloud config cran data database eclipse example extension framework github gradle groovy io ios javascript jvm kotlin library logging maven mobile module ...
🌐
GitHub
github.com › talios › googleformatter-maven-plugin
GitHub - talios/googleformatter-maven-plugin: Plugin for the Apache Maven build system to reformat source files. · GitHub
A simple Apache Maven plugin to reformat a projects source/test-sources using the google-java-format project to conform with the Google Code Style Guide.
Author: talios
Top answer
1 of 4
8

You can let pre-commit hook trigger formatter for files staged for commit.

git-code-format-maven-plugin uses google-java-format formatter and can install client-side pre-commit git hook during compile phase. It requires Maven 3.5.x, which should be enforced.

<build>
  <plugins>
    <plugin>
      <groupId>com.cosium.code</groupId>
      <artifactId>git-code-format-maven-plugin</artifactId>
      <version>VERSION</version>
      <executions>
        <execution>
          <goals>
            <goal>install-hooks</goal>
          </goals>
        </execution>
      </executions>
    </plugin>
    <plugin>
      <artifactId>maven-enforcer-plugin</artifactId>
      <version>VERSION</version>
      <executions>
        <execution>
          <goals>
            <goal>enforce</goal>
          </goals>
          <configuration>
            <rules>
              <requireMavenVersion>
                <version>[3.5.4,)</version>
              </requireMavenVersion>
            </rules>
          </configuration>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

Point to standalone Maven in IDE as git-code-format-maven-plugin does not play along nicely with embedded Maven.

mvn compile to get hook installed. For IDEA, that's it.

As git-code-format-maven-plugin only formats changed files (which is good), it is probably good to format whole project upfront once (mvn git-code-format:format-code -Dgcf.globPattern=**/*).

Workaround for Eclipse

Because of a bug in EGit, which sometimes ignores Git hooks completely, developers using Eclipse on Windows should have Cygwin in PATH. An empty cygpath.exe will do. Run 'Command Prompt' as a administrator and execute C:\>echo "" > /"Program Files"/Git/bin/cygpath.exe (kudos to hook is not working eclipse egit client).

Reboot.

A note on java import statements ordering

Optimise imports or reformat in IDE or reformat with plugins, can lead to changes in imports ordering. A nasty surprise if an older version of git-code-format-maven-plugin is being used together with fmt-maven-plugin (to format or validate code later in CI, for example).

  • git-code-format-maven-plugin will sort imports (since version 1.20)
  • fmt-maven-plugin will always sort imports
  • googleformatter-maven-plugin can optionally sort imports (not per default)
2 of 4
1

In order to run this formatter after each developer commit, you will have to first have a Jenkins commit hook in place, that will trigger a Jenkins build. One of the phases of the build, should execute the fmt-maven-plugin's (or any others) check functionality in order to ensure that the code is properly formatted.

Adding a webhook

First thing to do is add a webhook that will trigger a Jenkins build after every commit in your git repository. You can find how to do this here. For Gitlab specific instructions, this post from medium may be helpful.

Executing the check

This can be done by executing the check goal on the fmt-maven-plugin

Maven acceps either <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<plugin-version>]:<goal> as a means of calling a plugin goal, so for your specific problem, you can run:

mvn fmt:check

That being said, you will have to add a Jenkins build step, that will run the mentioned command. Step 5 from this tutorial shows you how to add a build step.

Hope that this actually helps :D

🌐
Maven Repository
mvnrepository.com › artifact › com.github.sherter.google-java-format
Maven Repository: com.github.sherter.google-java-format
aar android apache api arm assets build build-system bundle client clojure cloud config cran data database eclipse example extension framework github gradle groovy io ios javascript jvm kotlin library logging maven mobile module npm osgi persistence plugin resources rlang sdk server service ...
🌐
GitHub
github.com › google › google-java-format › blob › master › pom.xml
google-java-format/pom.xml at master · google/google-java-format
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> ... <developerConnection>scm:git:ssh://git@github.com/google/google-java-format.git</developerConnection>
Author: google
Find elsewhere
🌐
GitHub
gist.github.com › sandeepkv93 › 51db90f0e288cf21ca7ff34aa143d828
Automated Java Code Formatting with Maven using google-java-format · GitHub
This guide explains how to set up automated code formatting in a Java Maven project using Google's Java code formatter via the fmt-maven-plugin.
🌐
GitHub
github.com › google › google-java-format › issues › 69
Maven plugin · Issue #69 · google/google-java-format
August 19, 2016 - Support using Google Java Format as part a build in Maven thru a plugin. Google coding styles helps a great deal to apply a common scheme to a code repository. Although, there are ways to share/aut...
Author: google
🌐
Maven Repository
mvnrepository.com › artifact › com.google.googlejavaformat
Maven Repository: com.google.googlejavaformat
A Java source code formatter that follows Google Java Style. ... aar android apache api arm assets build build-system bundle client clojure cloud config data database eclipse example extension framework github gradle groovy io ios javascript jvm kotlin library logging maven mobile model module ...
🌐
Maven Repository
mvnrepository.com › artifact › com.github.google.google-java-format › google-java-format › versions
Maven Repository: com.github.google.google-java-format » google-java-format - Versions
A Java source code formatter that follows Google Java Style. ... aar android apache api arm assets build build-system bundle client clojure cloud config data database eclipse example extension framework github gradle groovy io ios javascript jvm kotlin library logging maven mobile model module ...
🌐
Medium
medium.com › @nirav-shah › code-formatting-using-spotless-google-java-format-for-java-maven-projects-with-git-pre-commit-860d6c15bf7c
Code Formatting Using Spotless & Google Java Format for Java Maven Projects with Git Pre Commit Hooks | by Nirav Shah | Medium
September 21, 2023 - We will use a pre commit hook to execute a spotless maven goal which will format a code before commiting it to repository. You can find hooks inside .git/hooks. Technogoloy & Plugin versions that I have used for article are, java 1.8, spotless maven plugin version 2.9.0, Google Java Formatter (version 1.7 which is supported for java 1.8), Git Build Hook Maven Plugin.
🌐
Maven Central
repo1.maven.org › maven2 › com › google › googlejavaformat › google-java-format › 1.5 › google-java-format-1.5.pom
https://repo1.maven.org/maven2/com/google/ ...
A Java source code formatter that follows Google Java Style. com.google.guava · guava · com.google.errorprone · javac-shaded · com.google.code.findbugs · jsr305 · true · com.google.errorprone · error_prone_annotations · true · junit · junit · com.google.guava · guava-testlib · ...
🌐
GitHub
github.com › topics › google-java-format
google-java-format · GitHub Topics · GitHub
java formatter netbeans eclipse netbeans-plugin netbeans-ide eclipse-formatter google-java-format spring-formatter ... Utility scripts for various things. To be used by `git submodule`. ... Sample maven module with custom shell script utilizing maven plugins to automate code formatting using Google Java Style guide, and enforcing code coverage, code quality and code security
🌐
GitHub
github.com › Cosium › git-code-format-maven-plugin
GitHub - Cosium/git-code-format-maven-plugin: A maven plugin that automatically deploys code formatters as pre-commit git hook · GitHub
<build> <plugins> <plugin> <groupId>com.cosium.code</groupId> <artifactId>git-code-format-maven-plugin</artifactId> <version>${git-code-format-maven-plugin.version}</version> <executions> <!-- On commit, format the modified files --> <execution> <id>install-formatter-hook</id> <goals> <goal>install-hooks</goal> </goals> </execution> <!-- On Maven verify phase, fail if any file (including unmodified) is badly formatted --> <execution> <id>validate-code-format</id> <goals> <goal>validate-code-format</goal> </goals> </execution> </executions> <dependencies> <!-- Enable https://github.com/google/google-java-format --> <dependency> <groupId>com.cosium.code</groupId> <artifactId>google-java-format</artifactId> <version>${git-code-format-maven-plugin.version}</version> </dependency> </dependencies> </plugin> </plugins> </build>
Author: Cosium
🌐
Maven Repository
mvnrepository.com › artifact › gradle.plugin.com.github.sherter.google-java-format › google-java-format-gradle-plugin › 0.8 › usages
Maven Repository: gradle.plugin.com.github.sherter.google-java-format » google-java-format-gradle-plugin » 0.8 (Usages)
com.github.sherter.google-java-format ... com.github.sherter.google-java-format.gradle.plugin ... aar amazon android apache api arm assets build build-system bundle client clojure cloud config cran data database eclipse example extension framework github gradle groovy io ios javascript jvm ...