Encontrar jarras sin usar usadas en un proyecto de eclipse

¿Hay plugins / herramientas disponibles para recorrer el classpath de un proyecto eclipse (o workspace) y resaltar los archivos jar no utilizados?

ClassPathHelper es un buen comienzo.

Identifica automáticamente tarros huérfanos y mucho más.

La única limitación es con las dependencias que no están definidas en las clases, por ejemplo, en los archivos de configuración del marco de dependency injection.

También tiene otras opciones / complementos, como:

  • workingfrog “Relief” , que depende de la capacidad de tratar objetos reales mediante el examen de su forma, tamaño o lugar relativo en el espacio, ofrece una vista “física” de los paquetes, tipos y campos de Java, y sus relaciones, haciéndolos más fáciles de manejar.
  • Detector de código innecesario : una herramienta PlugIn de eclipse para encontrar el código java público innecesario (muerto).

UCDetector no ayuda con esto: no funciona en JAR. Y para classpathHelper , no puedo encontrar una forma sencilla de listar los JAR huérfanos (por cierto, si alguien tiene un tutorial para esto, estoy interesado).

Entonces, si también está usando Maven como yo, descubro este gran plugin de Maven y me gustaría compartir esta solución con usted. Sólo tipo :

mvn dependency:analyze 

Y obtendrá instantáneamente una lista de JAR no utilizados en sus dependencias. Muy útil !

Puede usar uno de estos complementos: UCDetector o Classpath Helper

Encontré una herramienta muy rápida e interesante para archivar este objective:

http://tattletale.jboss.org/

Simplemente descomprime el progtwig y ejecuta:

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

Esto generará un informe muy impresionante con diferentes puntos (texto de su sitio):

  • Identificar dependencias entre archivos JAR
  • Encuentra las clases que faltan del classpath
  • Detectar si una clase / paquete se encuentra en varios archivos JAR
  • Detectar si el mismo archivo JAR se encuentra en múltiples ubicaciones
  • Con una lista de lo que requiere cada archivo JAR y proporciona
  • Verificar el SerialVersionUID de una clase
  • Encuentra archivos JAR similares que tienen diferentes números de versión
  • Encuentra archivos JAR sin un número de versión
  • Buscar archivos JAR no utilizados
  • Identificar archivos JAR sellados / firmados
  • Encuentra una clase en un archivo JAR
  • Obtenga el estado OSGi de su proyecto
  • Eliminar el uso de la API en la lista negra
  • Y genere los mismos informes para sus archivos .WAR y .EAR

Sé que esta es una antigua, pero si alguien más se tropieza con esto, Eclipse lo hace por sí mismo.

Vaya a Propiedades del proyecto-> Estilo de código Java-> Limpieza Seleccione el Eclipse [incorporado] y hace lo siguiente:

  • Cambiar los accesos no estáticos a los miembros estáticos usando el tipo de statement
  • Cambiar los accesos indirectos a miembros estáticos para accesos directos (accesos a través de subtipos)
  • Eliminar las importaciones no utilizadas
  • Agrega las anotaciones ‘@Override’ faltantes
  • Agregue las anotaciones ‘@Override’ faltantes a implementaciones de métodos de interfaz
  • Agregue las anotaciones “@Deprecated” que faltan
  • Eliminar moldes innecesarios
  • Eliminar tags innecesarias ‘$ NON-NLS $’