Rumah >Java >javaTutorial >Apakah kegunaan balang serasi berbilang versi dalam Java 9?

Apakah kegunaan balang serasi berbilang versi dalam Java 9?

WBOY
WBOYke hadapan
2023-09-06 16:49:07575semak imbas

Java 9中的多版本兼容jar的用途是什么?

Fungsi JAR serasi berbilang versi membolehkan kami memilih untuk menggunakan versi kelas yang kami mahu semasa menjalankan program perpustakaan dalam versi tertentu persekitaran Java. Kami boleh menentukan versi yang disusun melalui parameter --release.

Perubahan khusus ialah terdapat atribut baharu dalam fail MANIFEST.MF di bawah direktori META-INF, seperti yang ditunjukkan di bawah

<strong>Multi-Release: true</strong>

Terdapat versi baharu di bawah direktori "META-INF" Jadual kandungan. Jika kita ingin menyokong versi Java 9, terdapat direktori 9 di bawah direktori versi.

<strong>multirelease.jar
├── META-INF
│   └── versions
│       └── 9
│           └── multirelease
│               └── Helper.class
├── multirelease
    ├── Helper.class
    └── Main.class</strong>

Dalam contoh di bawah, kita boleh menggunakan fungsi JAR berbilang versi serasi untuk menjana dua versi pakej balang daripada fail "Test.java". Satu versi ialah jdk 7 dan versi lain ialah jdk 9 dan kemudian kami melaksanakannya dalam persekitaran yang berbeza.

Langkah 1: Buat folder dalam direktori C:/test/java7/com/tutorialspoint, dan buat fail "Test.java" dalam folder, seperti ditunjukkan di bawah:

<strong>package com.tutorialspoint;

public class Test {
   public static void main(String args[]) {
      System.out.println("Inside Java 7");
   }
}</strong>

2: Buat folder C:/test/java9/com/tutorialspoint, dan buat fail "Test.java" dalam folder seperti berikut:

<strong>package com.tutorialspoint;

public class Test {
   public static void main(String args[]) {
      System.out.println("Inside Java 9");
   }
}</strong>

kami boleh menyusun kod seperti berikut :

<strong>C:\test> javac --release 9 java9/com/tutorialspoint/Test.java
C:\test> javac --release 7 java7/com/tutorialspoint/Test.java</strong>

Kita boleh mencipta berbilang versi pakej balang yang serasi seperti berikut

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

Gunakan JDK 7 untuk melaksanakan: 🜎 Gunakan JDK 9 untuk melaksanakan:

<strong>C:\JAVA> java -cp test.jar com.tutorialspoint.Test
Inside Java 7</strong>

Atas ialah kandungan terperinci Apakah kegunaan balang serasi berbilang versi dalam Java 9?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam