Pregunta

Tengo un proyecto Java e internamente que depende de asm jar. Curiosamente, ni siquiera sé por qué mi proyecto de alguna manera depende de esta biblioteca ( podría ser llevados en Maven como una dependencia transitiva )?

ayuda Puede alguien me conocen ¿Por qué alguien necesita frasco asm

Gracias de antemano!

EDIT: Se puede también mencionar para qué propósitos / casos de uso de una fuerza frasco necesidad asm?

¿Fue útil?

Solución

ASM es un marco de manipulación de código de bytes (ver esta página para una introducción agradable) y es utilizado por muchas cosas ... que realizan la manipulación de código de bytes: marcos utilizando la generación y la reflexión proxy (primavera , Hibernate, etc), el imitar marcos ( EasyMock , JMock, etc), las herramientas de análisis de código ( PMD , Findbugs , etc). En realidad, el proyecto ASM mantiene una lista de usuarios organizados por categorías, echar un vistazo.

Como se ha mencionado por Vincent, si usted está en función transitiva en ASM, la dependency:tree meta o el dependencia reportar (ver los enlaces PMD y FindBugs anteriormente para los ejemplos) puede ayudar a analizar la situación y averiguar de donde su viniendo. Pero esto no va a tener en cuenta las dependencias de plugins de Maven que está utilizando, únicamente dependencias de su proyecto.

Otros consejos

Maven-2 requiere asm.jar para compilar y ejecutar la aplicación.

Aquí para más información.

EDIT:

  

Debido a los muchos posibles usos de análisis de programas, la generación y transfor-   mación técnicas, muchas herramientas para analizar, generar y transformar los programas   han puesto en práctica, para muchos idiomas, incluido Java. ASM es una de   estas herramientas para el lenguaje Java, diseñado para el tiempo de ejecución -, sino también fuera de línea - generación de la clase y la transformación. Por tanto, la biblioteca ASM1 fue diseñado para   trabajar en clases Java compiladas. También fue diseñado para ser tan rápido y tan pequeña   como sea posible. Al ser tan rápido como sea posible es importante a fin de no reducir la velocidad   demasiado las aplicaciones que el uso de ASM en tiempo de ejecución, para la clase dinámica gene-   ación o transformación. Y siendo tan pequeño como sea posible es importante con el fin   para ser utilizado en entornos de memoria limitado, y para evitar la hinchazón del   tamaño de pequeñas aplicaciones o bibliotecas utilizando ASM.   ASM no es la única herramienta para generar y transformar compilado de Java   clases, sino que es uno de los más recientes y eficientes. Se puede descargar   de http://asm.objectweb.org . Sus principales ventajas son las siguientes:   1) Tiene un sencillo, bien diseñado y API modular que es fácil de usar.   2) Es bien documentado y tiene un plugin de Eclipse asociado.   3) Proporciona soporte para la última versión de Java, Java 6.   4) Es pequeño, rápido y muy robusto.   5) Su gran comunidad de usuarios puede proporcionar soporte para los nuevos usuarios.   6) Su licencia de código abierto le permite utilizar en casi cualquier forma que desee.

este archivo pdf . Tengo la impresión de que, junto con Java EE 6 también llegó una herramienta integrada, ASM para la generación de la clase y la transformación. El PDF que da detalle en mayor profundidad acerca de ASM.

Espero que esto ayude.

¿Qué otras dependencias tiene su proyecto? Sospecho que uno de los frascos que ha decidido que necesite (por ejemplo, la primavera o hibernación) requiere asm.jar?

Es posible utilizar el dependencia Plugin Maven para ver qué biblioteca tiene asm como dependencia.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top