Creación de una Aplicación Java Simple
Comencemos creando una aplicación Java simple que empaquetaremos en un archivo JAR. Esto nos ayudará a demostrar y, posteriormente, a solucionar el error 'no main manifest attribute' (no hay atributo principal en el manifiesto).
Crear la Clase Java
Primero, cree un directorio para nuestros archivos fuente Java y navegue a él:
cd ~/project/src/com/example
Ahora, abra el editor y cree un nuevo archivo llamado HelloWorld.java en este directorio:
- Haga clic en el icono "Explorer" (Explorador) en la barra lateral izquierda del WebIDE
- Navegue a
/home/labex/project/src/com/example
- Haga clic con el botón derecho y seleccione "New File" (Nuevo archivo)
- Nombre el archivo
HelloWorld.java
Agregue el siguiente código al archivo HelloWorld.java:
package com.example;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
Este es un programa Java básico con un método main que imprimirá "Hello, World!" en la consola cuando se ejecute.
Compilar la Clase Java
Ahora, compilemos nuestra clase Java. Regrese a la terminal y navegue al directorio raíz del proyecto:
cd ~/project
Compile el archivo Java usando el comando javac:
javac -d . src/com/example/HelloWorld.java
Este comando compila el archivo fuente Java y coloca el archivo de clase compilado en la estructura de directorio apropiada según el nombre del paquete.
Ahora debería tener un archivo de clase compilado en ~/project/com/example/HelloWorld.class. Puede verificar esto con:
ls -l com/example/
La salida debería mostrar el archivo HelloWorld.class:
total 4
-rw-r--r-- 1 labex labex 426 [date] HelloWorld.class
Crear un Archivo JAR Básico Sin un Manifiesto
Ahora, creemos un archivo JAR sin especificar una clase principal en el manifiesto. Esto nos permitirá reproducir el error 'no main manifest attribute':
jar cf HelloWorld.jar com/
Este comando crea un archivo JAR llamado HelloWorld.jar que incluye el archivo de clase compilado.
Intente Ejecutar el Archivo JAR
Ahora que hemos creado nuestro archivo JAR, intentemos ejecutarlo:
java -jar HelloWorld.jar
Verá el mensaje de error:
no main manifest attribute, in HelloWorld.jar
Este es el error que estamos aprendiendo a solucionar. La JVM no puede encontrar la clase principal para ejecutar porque no la especificamos en el manifiesto del JAR.