ホームページ  >  記事  >  Java  >  Java 9 でのマルチバージョン互換の jar の用途は何ですか?

Java 9 でのマルチバージョン互換の jar の用途は何ですか?

WBOY
WBOY転載
2023-09-06 16:49:07564ブラウズ

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

マルチバージョン互換の JAR 関数を使用すると、特定のバージョンのライブラリ プログラムを実行するときに、必要なクラスのバージョンの使用を選択できます。 Java 環境。 --release パラメータを通じてコン​​パイルされたバージョンを指定できます。

具体的な変更点の 1 つは、以下に示すように、META-INF ディレクトリの MANIFEST.MF ファイルに新しい属性があることです。

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

"META-INF" ディレクトリの下に新しいバージョンのディレクトリがあります。 Java 9 バージョンをサポートしたい場合は、versions ディレクトリの下に 9 ディレクトリがあります。

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

次の例では、「Test.java# #」の マルチバージョン互換 JAR 関数を使用できます。 #"このファイルは 2 つのバージョンの jar パッケージを生成します。 1 つのバージョンは jdk 7 で、もう 1 つのバージョンは jdk 9 であり、異なる環境で実行します。

ステップ 1: C:/test/java7/com/tutorialspoint ディレクトリにフォルダーを作成し、##Test.java フォルダー内に「#」を作成します。以下に示すように、" ファイル:

<strong>package com.tutorialspoint;

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

ステップ 2:

フォルダー C:/test/java9/com/tutorialspoint を作成し、" Test.java" ファイルを次のようにフォルダーに追加します:

<strong>package com.tutorialspoint;

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

次のメソッドに従ってコードをコンパイルできます:

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

次の方法で

マルチバージョン互換の jar パッケージを作成できます

<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>

JDK 7 を使用して実行:

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

##JDK 9 を使用して実行:

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

以上がJava 9 でのマルチバージョン互換の jar の用途は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。