web-dev-qa-db-fra.com

Recherche de fichiers JAR non utilisés dans un projet Eclipse

Y a-t-il des plugins/outils disponibles pour parcourir le chemin de classe d'un projet (ou espace de travail) Eclipse et mettre en évidence les pots non utilisés?

65
RodeoClown

ClassPathHelper est un bon début.

Il identifie automatiquement les bocaux orphelins et bien plus encore.

La seule limitation concerne les dépendances qui ne sont pas définies dans les classes, par exemple dans les fichiers de configuration du framework d'injection de dépendances.

Vous avez également d'autres options/compléments, tels que:

  • workingfrog "Relief" , qui repose sur la capacité de traiter des objets réels en examinant leur forme, leur taille ou leur emplacement relatif dans l'espace, il donne une vue "physique" sur Java = packages, types et champs et leurs relations, ce qui les rend plus faciles à manipuler.
  • Détecteur de code inutile : un outil Eclipse PlugIn pour trouver le public inutile (mort) Java code.
46
VonC

UCDetector n'aide pas pour cela: il ne fonctionne pas sur les fichiers JAR. Et pour classpathHelper , je ne pourrai pas trouver un moyen simple de lister les JAR orphelins (BTW, si quelqu'un a un tutoriel pour cela, Je suis intéressé).

Donc, si vous utilisez également Maven comme moi, je découvre ce super plugin Maven , et je voudrais partager cette solution avec vous. Tapez simplement:

mvn dependency:analyze

Et vous obtiendrez instantanément une liste des fichiers JAR inutilisés dans vos dépendances. Très utile !

30
Raphael Jolivet

Vous pouvez utiliser l'un de ces plugins: CDetector ou Classpath Helper

7
KS2008

J'ai trouvé un outil très rapide et intéressant pour archiver cet objectif:

http://tattletale.jboss.org/

Décompressez simplement le programme et exécutez:

Java -Xmx512m -jar tattletale.jar ~/myjavaproject/mydistribution output

Cela va générer un rapport très impressionnant avec différents points (texte de leur site):

  • Identifier les dépendances entre les fichiers JAR
  • Trouver les classes manquantes dans le chemin de classe
  • Repérer si une classe/un package se trouve dans plusieurs fichiers JAR
  • Repérer si le même fichier JAR se trouve à plusieurs emplacements
  • Avec une liste de ce que chaque fichier JAR requiert et fournit
  • Vérifiez le SerialVersionUID d'une classe
  • Rechercher des fichiers JAR similaires qui ont des numéros de version différents
  • Rechercher des fichiers JAR sans numéro de version
  • Trouvez les archives JAR inutilisées
  • Identifier les archives JAR scellées/signées
  • Recherchez une classe dans un fichier JAR
  • Obtenez le statut OSGi de votre projet
  • Supprimer l'utilisation d'API sur liste noire
  • Et générez les mêmes rapports pour vos archives .WAR et .EAR
6
bobbel

Je sais que c'est un ancien, mais si quelqu'un tombe dessus, Eclipse le fait tout seul.

Naviguez vers les propriétés du projet-> Style de code Java-> Nettoyage Sélectionnez l'Eclipse [Built-in] et il fait ce qui suit:

  • Modifier les accès non statiques en membres statiques à l'aide du type de déclaration
  • Modifier les accès indirects en membres statiques en accès directs (accès via des sous-types)
  • Supprimer les importations inutilisées
  • Ajouter les annotations "@Override" manquantes
  • Ajouter les annotations "@Override" manquantes aux implémentations des méthodes d'interface
  • Ajouter les annotations "@Deprecated" manquantes
  • Supprimer les moulages inutiles
  • Supprimez les balises inutiles "$ NON-NLS $"
0
Jon Carlstedt