マルチバージョン互換の 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>
フォルダー 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 サイトの他の関連記事を参照してください。