Java9 多版本JAR

Java9 多版本JAR

Java 9中,引入了一项新功能,增强了jar格式,可以按照平台维护和使用不同版本的Java类或资源。在JAR中,文件MANIFEST.MF在其主要部分中有一个Multi-Release:true的条目。META-INF目录还包含一个versions子目录,其子目录(以9开头表示Java 9)存储特定版本的类和资源文件。

在这个例子中,我们将使用一个多版本jar来拥有Tester.java文件的两个版本,一个用于jdk 7,一个用于jdk 9,并在不同的jdk版本上运行它。

步骤

第1步 - 在c:/test/java7/com/tutorialspoint中创建一个文件夹,创建Test.java文件,内容如下:

Tester.java

package com.tutorialspoint;

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

第2步 - 创建一个文件夹c:/test/java9/com/tutorialspoint。使用以下内容创建Test.java文件 –

Tester.java

package com.tutorialspoint;

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

编译源代码。

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

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

创建多版本的JAR文件

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

运行需要JDK 7

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

在JDK 9中运行

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

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程