Cómo crear y ejecutar un archivo .Jar en el terminal de Linux


Un JAR ( Java ARchive ) es un formato de archivo independiente de la plataforma que se utiliza para agregar muchos archivos de clase Java y metadatos y recursos asociados, como texto, imágenes, etc., en un solo archivo. para su distribución.

Permite que los tiempos de ejecución de Java implementen de manera eficiente una aplicación completa en un archivo comprimido, y proporciona muchos beneficios, como la seguridad, sus elementos pueden comprimirse, acortando los tiempos de descarga, permite el sellado y la creación de versiones de paquetes, soporta portabilidad. También es compatible con el embalaje para extensiones.

En este artículo, mostraremos cómo crear una aplicación Java simple y agruparla en un archivo JAR , y demostraremos cómo ejecutar un archivo .jar desde el terminal de Linux.

Para hacer esto, debe tener instalada la herramienta de línea de comandos java para iniciar una aplicación Java y el indicador -jar para ejecutar un programa encapsulado en un archivo JAR . Cuando se utiliza este indicador, el archivo JAR especificado es el origen de todas las clases de usuario y se ignoran otras configuraciones de ruta de clase.

Cómo crear un archivo JAR en Linux

1. Primero comience escribiendo una clase Java simple con un método principal para una aplicación llamada TecmintApp , con fines de demostración.

$ vim TecmintApp.java

Copie y pegue el siguiente código en el archivo TecmintApp.java .

public class TecmintApp {
	public static void main(String[] args){
		System.out.println(" Just executed TecmintApp! ");
	}
}

Guarde el archivo y ciérrelo.

2. A continuación, debemos compilar y empaquetar la clase en un archivo JAR utilizando las utilidades javac y jar como se muestra.

$ javac -d . TecmintApp.java
$ ls
$ jar cvf tecmintapp.jar TecmintApp.class
$ ls

3. Una vez que se haya creado tecmintapp.jar , ahora puede ejecutar el archivo con el comando java como se muestra.

$ java -jar tecmintapp.jar

no main manifest attribute, in tecmintapp.jar

Desde la salida del comando anterior, encontramos un error. La JVM ( Máquina virtual Java ) no pudo encontrar nuestro principal atributo de manifiesto , por lo que no pudo localizar la clase principal que contiene el método principal ( public static void main (String [] args)).

El archivo JAR debe tener un manifiesto que contenga una línea en la forma Clase principal: nombre de clase que define la clase con el método principal que sirve como punto de partida de nuestra aplicación.

4. Para corregir el error anterior, debemos actualizar el archivo JAR para incluir un atributo de manifiesto junto con nuestro código. Vamos a crear un archivo MANIFEST.MF .

$ vim MANIFEST.MF

Copie y pegue la siguiente línea en el archivo MANIFEST.MF .

Main-Class:  TecmintApp

Guarde el archivo y agreguemos el archivo MANIFEST.MF a nuestro tecmintapp.jar usando el siguiente comando.

$ jar cvmf MANIFEST.MF tecmintapp.jar TecmintApp.class

5. Finalmente, cuando ejecutamos el archivo JAR nuevamente, debería producir el resultado esperado como se muestra en la salida.

$ java -jar tecmintapp.jar

Just executed TecmintApp!

Para obtener más información, consulte las páginas de comando de java , javac y jar .

$ man java
$ man javac
$ man jar

Referencia : empaquetando programas en archivos JAR.

¡Eso es todo! En este breve artículo, hemos explicado cómo crear una aplicación Java simple y agruparla en un archivo JAR, y hemos demostrado cómo ejecutar un archivo .jar desde el terminal. Si tiene alguna pregunta o ideas complementarias para compartir, utilice el formulario de comentarios a continuación.