Tattletale signifie « révélateur ». Il s’agit d’un outil qui analyse les dépendances entre les jars. Ce dernier scanne un répertoire contenant l’ensemble des librairies et génère divers rapports HTML. Au même titre que Cobertura, FindBugs, Pmd etc…, JBoss Tattletale risque bien de devenir un outil fort utile dans votre environnement d’intégration.

Ce projet a été démarré en février 2009. La 1.0.0 est sortie en avril 2009 et la version actuelle est la 1.1 sortie en mars 2010.

Il permet :

  • D’identifier les dépendances entre les jars présents dans un répertoire
  • Trouver les classes manquantes du classpath
  • Mettre en évidence des classes utilisées dans de multiples jars
  • Mettre en évidence deux même jars dans de multiples localisations
  • Vérifier le SerialVersionUID d’une classe
  • Mettre en évidence deux même jars avec un numéro de version différent
  • Trouver les jars sans numéro de version
  • Trouver les jars non utilisés
  • Lister les classes d’un jar et les classes dont elles dépendent
  • Obtenir le statut OSGI d’un jar et founir le Manifest
  • De générer des graphes de dépendances en png à l’aide de Graphviz (http://www.graphviz.org)

Cet outil peut-être utile lors de la migration vers Maven d’applications existantes non mavenisées, dont les jars ne sont pas versionnés et dont les dépendances entre les jars se sont pas évidentes.

Mais il peut également mettre en évidence les jars réellement utiles pour les applications mavenisées. En effet Maven 2 et sa gestion des dépendances transitives, a tendance à ramener trop de jars, si on ne précise pas de les exclure explicitement dans le pom.xml ou si la dépendance n’est pas explicitement définie dans ce même fichier.

L’analyse de ses rapports va donc permettre de minimiser le nombre de dépendances, de mettre en évidence la moindre duplication de classes dans le classpath et d’éviter les dépendances circulaires.

Vous l’attendiez tous avec impatience : voici le support de présentation de l’Open Rex du 8 juillet dernier sur GIT.

Ce retour d’expérience sur GIT nous a permis de faire connaissance avec ce DVCS qui bénéficie d’un bouche à oreille de plus en plus grandissant.