Stand-alone de code Java formateur/formatage automatique de la requête/joli imprimante?

Je suis intéressé à en apprendre sur les choix disponibles de de haute qualité, stand-alone du code source des formateurs pour Java.

Le formateur doit être autonome, c'est, il doit prendre en charge un mode"batch" qui est découplée de tout environnement de développement particulier. Idéalement, elle devrait être indépendant de tout système d'exploitation particulier ainsi. Donc, intégré dans le module de formatage pour l'IDE du jour est de peu d'intérêt ici (à moins que l'IDE prend en charge le mode batch formateur invocation, peut-être à partir de la ligne de commande). Un formateur écrit en closed-source C/C++ qui ne fonctionne que sous Windows n'est pas l'idéal, mais c'est quelque peu intéressante.

Pour être clair, un "formateur" (ou "formatage automatique de la requête") n'est pas le même comme un "vérificateur de style." Un formateur accepte le code source en entrée, applique des règles de style, et produit de style de code source qui est sémantiquement équivalent à l'original du code source. Syntaxique modifications sont limitées à des choses comme la modification de la disposition du code, comme dans l'évolution des espaces, ou l'organisation d' import consolidés. Très peu, le cas échéant, d'autres refactoring est effectuée. Un correcteur de style s'applique également des règles de style, mais il a simplement rapports violations des règles sans produire de code source modifié en sortie. Ainsi, l'image ressemble à ceci:

Formateur (produit modifié le code source qui est conforme aux règles de style)

Lire Le Code Source → Appliquer Des Règles De Style → Ecrire Un Style Code Source

Vérificateur de Style (ne produit pas de code source modifié)

Lire Le Code Source → Appliquer Des Règles De Style → Écrire Une Violation Des Règles

De Plus Amples Précisions

Solutions doivent être hautement configurable. Je veux être en mesure de préciser mon propre style, pas il suffit de sélectionner à partir d'une liste prédéfinie.

Aussi, je suis ne cherche pas une usage général imprimeur écrit en Java qui peut pretty-print beaucoup de choses. Je veux le style de code Java.

Je suis aussi pas nécessairement intéressé par un grand-unifiée formateur pour de nombreuses langues. Je suppose que cela pourrait être sympa pour une solution de support pour les langages autres que Java, mais ce n'est pas une exigence.

En outre, des outils qui font uniquement de la mise en valeur du code sont droit hors.

Je suis aussi pas intéressé par un service web. Je veux un outil que je peux l'exécuter localement.

Enfin, les solutions ne doivent pas être limités à l'open source, le domaine public, sharewares, logiciel gratuit, commerciale, ou quoi que ce soit d'autre. Toutes les formes de licences sont acceptables.

InformationsquelleAutor Greg Mattes | 2009-06-15