Hola a todos. En el desarrollo de software, es común necesitar generar hashes para verificar la integridad de los archivos. Si estás usando Apache Ant para tus proyectos y necesitas generar los hashes MD5 y SHA1 de un archivo .jar al momento de la compilación, te tengo una solución elegante y simple.
Aunque existen programas de escritorio para esta tarea, automatizarla con Ant es mucho más eficiente, ya que te permite integrar el proceso directamente en tu flujo de trabajo.
La solución en el build.xml
La clave es usar la tarea checksum de Ant, que está diseñada para generar sumas de verificación de archivos. Aquí está el código que puedes agregar a tu archivo build.xml:
<antcall target="checkSum">
<param name="path" value="<ruta>"/>
<param name="dir" value="<directorio>"/>
</antcall>
<target name="checkSum">
<basename property="_base" file="${path}"/>
<checksum file="${path}" property="md5"/>
<checksum file="${path}" property="sha1" algorithm="SHA-1"/>
<echo message="MD5: ${md5} SHA1: ${sha1} *${_base} " file="${dir}Information.txt"/>
</target>
Análisis del código:
<antcall target="checkSum">: Llama a la tareacheckSum, pasándole los parámetros de la ruta del archivo y el directorio de salida.<basename>: La tareabasenameextrae el nombre del archivo de la ruta completa y lo almacena en la propiedad_base.<checksum>: Esta es la tarea principal.La primera línea genera el hash MD5 por defecto.
La segunda línea genera el hash SHA1 al especificar el atributo
algorithm="SHA-1". El resultado se guarda en las propiedadesmd5ysha1respectivamente.
<echo>: La tareaechose encarga de escribir el resultado en un archivo de texto (Information.txt), mostrando el nombre del archivo y sus correspondientes hashes.
Con estas líneas, cada vez que ejecutes tu build, Ant generará un archivo Information.txt con los hashes MD5 y SHA1 de tu archivo .jar, de forma automática y consistente.
Espero que esta solución te ayude a optimizar tu proceso de compilación y a tener un mejor control de la integridad de tus archivos.
0 Comentarios