Question

Je suis un utilisateur isolé d'Emacs dans un groupe accroché à Eclipse. Maintes et maintes fois, les différences de code sont agrandies par les importations & "; Organisées &"; ou " nettoyé " par Eclipse.

Je n'ai pas d'opinion tranchée sur le style d'importation en Java, mais je souhaite minimiser nos différences. Que puis-je faire?

Nous utilisons Maven2 pour les versions; y a-t-il un plugin qui peut m'aider? Peut-on extraire un morceau d’Eclipse & Amp; transformé en un plugin Maven? J'utilise actuellement ImportScrubber et j'ai rencontré quelques pièces autonomes qui font la même chose. Ce que je recherche vraiment, c’est un plugin Maven qui puisse s’intégrer à la compilation.

Sauf ce qui précède, je vais mettre une invocation ImportScrubber dans mon .git/hooks/post-commit.

Était-ce utile?

La solution

L'outil de lissage Hybridlabs utilisé en interne dans le Le projet openArchitectureWare (un framework de générateur open source) fait ce que vous recherchez. Comme expliqué dans cette une entrée de blog , celle-ci est disponible en tant que projet Google Code et son documentation décrit un plug-in maven 2:

<plugin>
    <groupId>org.hybridlabs</groupId>
    <artifactId>maven-beautifier-plugin</artifactId>
    <executions>
         <execution>
             <goals>
                 <goal>beautify-imports</goal>
             </goals>
         </execution>
     </executions>
    <configuration>
         <!-- Recursively scan for *.java and beautifies imports -->
         <inputDirectory>${pom.basedir}/..</inputDirectory>
         <!--outputDirectory>${pom.basedir}/..</outputDirectory>
         <runBeautifier>true/runBeautifier>
         <runJalopy>false</runJalopy-->
    </configuration>
</plugin>

Il y a bien un mojo dans le arbre source , mais cela ne correspond pas à la groupId mentionnée ci-dessus (c'est un peu déroutant) et je n'ai pas pu trouvez le plugin dans le dépôt public de maven.

Peut-être aurez-vous plus de chance avec la version disponible dans le référentiel de plug-in AndroMDA, documentée dans ce fil (le plugin est en effet présent dans http: / /team.andromda.org/maven2/ ).

  

Le plugin est sous   org.apache.maven.plugins.maven-beautifier-plugin   Il peut être exécuté avec le formulaire court:   mvn beautifier:beautify-imports Il   peut également être exécuté dans le cadre d'un projet   pom en ajoutant la déclaration du plugin   sous <build><plugins>:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-beautifier-plugin</artifactId>
    <version>1.0</version>
    <executions>
        <execution>
            <goals>
                <goal>beautify-imports</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <inputDirectory>${pom.basedir}/target/src</inputDirectory>
    </configuration>
</plugin>

Ou contactez l'auteur du projet (par exemple, via twitter ou par courrier électronique).

Autres conseils

Je pense que vous tous (Eclipse, Emacs ou d’autres utilisateurs) devriez utiliser quelque chose comme Jalopy qui prend en charge à la fois Eclipse et Maven . De cette manière, il devient inutile de modifier le code tant qu'il a été exécuté dans pretty-printer dans le cadre de son enregistrement. A déclaré que - je ne suis pas sûr que Jalopy soit en faveur de l'organisation des importations au-delà du tri

Votre magasin dispose-t-il de normes de code sur la manière dont les importations doivent être organisées? Si c'est le cas, vous n'avez pas de chance. Minimiser les différences est un petit sacrifice à faire pour améliorer progressivement le code.

J'ai également trouvé un plug-in ImportScrubber . Je ne peux pas encore attester de sa qualité.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top