Manufactura industrial
Internet industrial de las cosas | Materiales industriales | Mantenimiento y reparación de equipos | Programación industrial |
home  MfgRobots >> Manufactura industrial >  >> Industrial programming >> Java

Java 9 Multi-Release JAR: Aprovechar Versiones de Clase Específicas de Plataforma

En Java 9, se introduce una nueva característica donde el formato JAR se ha mejorado para que diferentes versiones de clases o recursos de Java puedan mantenerse y usarse según la plataforma. En JAR, un archivo MANIFEST.MF tiene una entrada Multi-Release: true en su sección principal. El directorio META-INF también contiene un subdirectorio versions cuyos subdirectorios (empezando con 9 para Java 9) almacenan clases y archivos de recursos específicos de versión.

En este ejemplo, usaremos un jar multi-release para tener dos versiones de Tester.java, una para jdk 7 y otra para jdk 9 y ejecutarlo en diferentes versiones de jdk.

Pasos

Paso 1 - Crear una carpeta c:/test/java7/com/tutorialspoint. Crear Test.java con el siguiente contenido:

Tester.java

package com.tutorialspoint;

public class Tester {
    public static void main(String[] args) {
        System.out.println("Dentro de Java 7");
    }
}

Paso 2 - Crear una carpeta c:/test/java9/com/tutorialspoint. Crear Test.java con el siguiente contenido:

Tester.java

package com.tutorialspoint;

public class Tester {
    public static void main(String[] args) {
        System.out.println("Dentro de Java 9");
    }
}

Compila los códigos fuente.

C:\test > javac --release 9 java9/com/tutorialspoint/Tester.java
C:\JAVA > javac --release 7 java7/com/tutorialspoint/Tester.java

Crea el jar multi-release

C:\JAVA > jar -c -f test.jar -C java7 . --release 9 -C java9.
Warning: entry META-INF/versions/9/com/tutorialspoint/Tester.java, multiple resources with same name

Ejecutar con JDK 7

C:\JAVA > java -cp test.jar com.tutorialspoint.Tester
Inside Java 7

Ejecutar con JDK 9

C:\JAVA > java -cp test.jar com.tutorialspoint.Tester
Inside Java 9

Java

  1. Dominar Operadores en Java: Tipos, Sintaxis y Ejemplos Prácticos
  2. Comentarios en Java: Tipos, Uso y Mejores Prácticas
  3. Dominar el Bucle for Mejorado en Java: Sintaxis, Ejemplos y Mejores Prácticas
  4. Dominar Strings en Java: Creación, Métodos y Mejores Prácticas
  5. Dominando interfaces en Java: Conceptos, implementación y mejores prácticas
  6. Dominando las clases internas anónimas en Java: Definición, sintaxis y ejemplos prácticos
  7. Dominando Try‑with‑Resources en Java: Gestión automática de recursos explicada
  8. Anotaciones en Java explicadas: Tipos, ubicación y ejemplos prácticos
  9. Aserciones en Java: Guía práctica para detectar bugs y asegurar fiabilidad del código
  10. Entendiendo Java Vector: Uso, Características y Comparación con ArrayList
  11. Java 9 Multi-Release JAR: Aprovechar Versiones de Clase Específicas de Plataforma