Estigmatizados

La informática profesional no es un juego de políticos

Jarfinder Tool – Utilidad cli para localizar clases Java en el Classpath

El título parece un chiste de Chiquito… Disculpad, tengo que cuidar también el mercado anglosajón 🙂
Esta utilidad tiene básicamente la misma función que la JSP para localizar clases vista en un post anterior.
Ejecutada sobre un directorio busca los archivos .jar existentes y crea un ClassLoader para delegar en él la búsqueda de la clase indicada como parámetro.
Presenta un par de diferencias con la versión JSP, estas diferencias se traducen en pros y contras.

Pros
—-
Al poder ser invocada desde línea de comando es mucho más sencilla de usar; no tenemos por qué andar copiando la JSP en el contexto de una aplicación. Tan sólo tenemos que ejecutarla indicando el directorio padre donde se encuentran los archivos JAR que pueden contener la clase buscada (ej: c:\install\alfresco\tomcat)

Contras
—-
Al crear un ClassLoader propio, el JAR que esta utilidad encuentra puede no coincidir con el JAR que utiliza el ClassLoader de la aplicación web. Recordemos que los ClassLoader se organizan en una jerarquía y ésta puede ser parent-child o child-parent. Si dos JAR contienen una misma clase la versión de línea de comandos no tiene por qué devolver el mismo JAR que utiliza el ClassLoader de la aplicación web.

Un ejemplo de uso de la utilidad sería:
jarfinder /R -class org.apache.coyote.ActionCode -dir .

Siendo jarfinder un archivo de script (sh o bat) tal como:

@echo off
c:\desarrollo\java\install\jdk1.6.0_14\bin\java.exe -jar "C:\Archivos de programa\Desarrollo\jarfinder.jar" %1 %2 %3 %4 %5 %6 %7 %8 %9

El código fuente Java de la utilidad:

Sigue leyendo

Anuncios

septiembre 14, 2009 Posted by | Programación | Deja un comentario