2009-06-09 25 views
9

Actualmente estoy refactorizando una gran aplicación Java. He dividido uno de los proyectos centrales (Eclipse) en aproximadamente 30 "componentes" individuales, sin embargo, siguen siendo fuertemente interdependientes. Para tener una mejor idea de lo que depende de lo que estoy buscando, de alguna manera para graficar las dependencias de tiempo de compilación.¿Cómo puedo visualizar dependencias jar (no complemento)?

Todas las herramientas que he encontrado hasta ahora son capaces de graficar dependencias de paquete o clase o las dependencias entre complementos de Eclipse, sin embargo, lo que tengo en mente solo debe echar un vistazo a la configuración de ruta de clase para cada proyecto de Eclipse y construir un grano más grueso gráfico de eso.

Más tarde iré más profundo, sin embargo, ahora mismo esto significaría que no podría ver el bosque por todos los árboles.

Respuesta

3

Structure101 es capaz de visualizar clases y métodos de dependencias de nivel JAR en Jboss 5.

Ver la pantalla de abajo o view it larger.

alt text

+1

los enlaces de imagen están muertos –

+1

Enlace fijo, gracias por marcar a Andrius. –

3

Una herramienta que creo que haría lo que quiera es Understand. No es gratis, pero puedes descargar una versión de prueba gratuita antes de invertir dinero en ella.

8

Consulte JBoss Tattletale. Puede que no haga todo lo que pide, pero vale la pena echarle un vistazo. Sin embargo, todavía es relativamente nuevo.

La herramienta le proporcionará informes que pueden ayudarle a

  • Identificar las dependencias entre los archivos JAR
  • Encuentra falta clases de la ruta de clases
  • Puntual si una clase se encuentra en varios archivos JAR
  • Localice si el mismo archivo JAR está ubicado en varias ubicaciones
  • Con una lista de lo que requiere cada archivo JAR y proporciona
  • Verificar la serialVersionUID de una clase
  • Encuentra archivos JAR similares que tienen diferentes números de versión
  • archivos JAR
  • encontrar sin un número de versión
  • Localizar una clase en un archivo JAR
  • Obtener el estado de OSGi de su proyecto
  • Retire negro uso de la API cotizada
0

para el registro (y para la mejora de esta base de conocimientos), me encontré con camarones muy útiles: http://www.thechiselgroup.org/shrimp

Shrimp-Visualization

Además, para una fácil verificación de la dependencia, vale la pena intentar con Byecycle, pero parece que ya no se actualiza: Byecycle

Ambas herramientas también ofrecen integración Eclipse.

+0

La página del proyecto de camarones dice que se ha vuelto a intentar. El enlace de Byecycle está roto. – s10z

+0

@ s10z actualmente estoy bastante contento con los diagramas integrados de IntelliJ para dependencias (por ejemplo, clase y Maven) ... – Gregor

1

Suena como un caso de uso para Degraph. Analiza un grupo de archivos de clase y jar, y visualiza las dependencias.

Lo que lo hace adecuado para su uso (creo) es la posibilidad de definir grupos arbitrarios de clases para agruparlos. Para que pueda reproducir su estructura de jar, viendo las dependencias, especialmente las dependencias cíclicas.

Puede desplegar los grupos para ver sus clases incluidas o contraerlas para simplificar la vista.

Para una impresión rápida de lo que es posible, eche un vistazo al Degraph Examples.

Ejemplo para Log4j:

Log4J dependencies

+0

Muy interesante. +1 – VonC

2

JDeps ya está incluido en el JDK, y muestra las dependencias JAR. Por ejemplo:

jdeps -R -cp "my\jar\dir\*;my\other\jar\dir\*" my\classes\dir 
Cuestiones relacionadas