English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutoriales básicos de Java

Control de flujo de Java

Java array

Java orientado a objetos (I)

Java orientado a objetos (II)

Java orientado a objetos (III)

Manejo de excepciones en Java

Java Lista (List)

Java Queue (cola)

Conjuntos de Java Map

Conjuntos de Java

Java entrada/salida (I/O)

Lector de Java/Escritor

otros temas de Java

Java 9 paquetes jar compatibles con múltiples versiones

Java 9 Nuevas características

La función de JAR compatible con múltiples versiones te permite crear bibliotecas de clase que solo utilizan versiones específicas del entorno Java.

A través de --parámetro de lanzamiento especifica la versión de compilación.

Los cambios específicos son en el META-Se ha añadido una propiedad nueva en el archivo MANIFEST.MF en el directorio INF:

Multi-Lanzamiento: true

Luego en el META-Además, se ha añadido un directorio versions en el directorio INF, si es para soportar java9Luego en el directorio versions hay 9 directorio.

multirelease.jar
├── META-INF
│   └── versions
│       └── 9
│           └── multirelease
│               └── Helper.class
├── multirelease
    ├── Helper.class
    └── Main.class

En el siguiente ejemplo, usamos la función de JAR compatible con múltiples versiones para generar dos versiones del archivo Tester.java, una es jdk 7Y otro es jdk 9Luego ejecutamos en diferentes entornos.

Primer paso

Crea la carpeta c:/test/java7/com/w3codebox, y luego crea el archivo Test.java en la carpeta, el código es el siguiente:

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

Segundo paso

Crea la carpeta c:/test/java9/com/w3codebox, y luego crea el archivo Test.java en la carpeta, el código es el siguiente:

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

Compilar código fuente:

C:\test > javac --publicación 9 java9/com/w3codebox/Tester.java
C:\JAVA > javac --publicación 7 java7/com/w3codebox/Tester.java

Crear paquetes jar compatibles con múltiples versiones

C:\JAVA > jar -c -f test.jar -C java7 . --publicación 9 -C java9.
Advertencia: entrada META-INF/versiones/9/com/w3codebox/Tester.java, 
   múltiples recursos con el mismo nombre

Usar JDK 7 Ejecutar:

C:\JAVA > java -cp test.jar com.w3codebox.Tester
Dentro de Java 7

Usar JDK 9 Ejecutar:

C:\JAVA > java -cp test.jar com.w3codebox.Tester
Dentro de Java 9

Java 9 Nuevas características