[JAVA] Automatisez le format avec maven-formatter

introduction

À l'origine, chaque membre de l'équipe définissait le format dans l'EDI et exécutait le format. Ce serait bien s'il était automatiquement formaté lorsqu'il était poussé vers github. Alors je l'ai présenté, je vais donc résumer la méthode.

1. Paramètres Maven

Cette fois, nous utiliserons formatter-maven-plugin.

1.1. Ajout du plugin à pom.xml.

<project ...>
    ...
    <plugins>
      <plugin>
        <groupId>net.revelc.code.formatter</groupId>
        <artifactId>formatter-maven-plugin</artifactId>
        <version>2.11.0</version>
      </plugin>
    </plugins>
    ...
</project>

Après le paramétrage, vous pouvez exécuter le formatage ou valider avec la commande suivante.

//Format d'exécution
mvn formatter:format
//vérifier
mvn formatter:validate

1.2. Paramètres du répertoire

Lors de la spécification d'un répertoire autre que src / main / java ou src / test / java

<plugin>
  <groupId>net.revelc.code.formatter</groupId>
  <artifactId>formatter-maven-plugin</artifactId>
  <version>2.11.0</version>
  <configuration>
    <directories>
      <directory>${project.build.sourceDirectory}</directory>
      <directory>${project.build.directory}/generated-sources</directory>
    </directories>
  </configuration>
</plugin>

Lors de la spécification d'un répertoire ou d'un fichier dans src / main / java ou src / test / java

--inclut: les répertoires et les fichiers que vous souhaitez cibler --exclus: répertoires et fichiers que vous souhaitez exclure ** Remarque: écrivez correctement jusqu'à / **

<plugin>
  <groupId>net.revelc.code.formatter</groupId>
  <artifactId>formatter-maven-plugin</artifactId>
  <version>2.11.0</version>
  <configuration>
    <includes>
      <include>jp/****/****/****/formatter/</include>
    </includes>
    <excludes>
      <exclude>jp/relativitas/maven/plugins/formatter/special/</exclude>
      <exclude>**/*Test.java</exclude>
    </excludes>
  </configuration>
</plugin>

1.3. Paramètres de format de fichier

Pour définir votre propre format, vous devez spécifier un fichier de configuration de format Eclipse. La recommandation est format publié par google.

<plugin>
  <groupId>net.revelc.code.formatter</groupId>
  <artifactId>formatter-maven-plugin</artifactId>
  <version>2.11.0</version>
  <configuration>
    <configFile>${project.basedir}/eclipse-java-google-style.xml</configFile>
  </configuration>
</plugin>

2. Paramètres des actions Github

2.1. Créer un fichier YAML

Créez un fichier YAML dans .github / workflows /. Le contenu de l'exécution est le suivant.

 name: auto-format
on:
  push:
jobs:
  build:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v2
      - name: Set up JDK 1.8
        uses: actions/setup-java@v1
        with:
          java-version: 1.8
      - name: format
        run: |
          mvn formatter:format
          mvn formatter:validate
      - uses: stefanzweifel/[email protected]
        with:
          commit_message: Formatted code

en conclusion

Avec les paramètres ci-dessus, un commit qui a été formaté sera créé lorsque le code est poussé vers github. Cela vous évitera d'oublier le format localement et vous pourrez facilement effectuer des révisions de code.

Recommended Posts

Automatisez le format avec maven-formatter
Formater JSON avec org.json
Formater Ruby avec VS Code
[Rails] Spécifiez le format avec link_to
Utiliser le format nommé avec la méthode de format de Ruby
Mettre en forme le contenu de LocalDate avec DateTimeFormatter
Automatisez les tests d'intégration avec le plug-in Maven Failsafe