Java9多版本Jar( Multirelease JAR)
在java 9中,引入了一个新特性,其中jar格式得到了增强,可以根据平台维护和使用不同版本的java类或资源。 在JAR中,文件MANIFEST.MF
文件的main
部分中有一个条目Multi-Release:true
。 META-INF
目录还包含版本子目录,其子目录(从9开始,用于Java 9)存储版本特定的类和资源文件。
在这个例子中,我们将使用多版本的jar来创建两个版本的Tester.java
文件,一个用于jdk 7,另一个用于jdk 9,并在不同的jdk版本上运行。
第1步 - 创建一个文件夹c:/test/java7/com/zyiz
。 用以下内容创建Test.java
-
文件:Tester.java 的代码如下 -
package com.zyiz; public class Tester { public static void main(String[] args) { System.out.println("Inside java 7"); } }
第2步 - 创建一个文件夹c:/test/java9/com/zyiz
。 用以下内容创建:Test.java -
package com.zyiz; public class Tester { public static void main(String[] args) { System.out.println("Inside java 9"); } }
编译源代码,分别执行以下命令 -
C:\test > javac --release 9 java9/com/zyiz/Tester.java C:\JAVA > javac --release 7 java7/com/zyiz/Tester.java
创建多版本的jar,执行以下命令 -
C:\JAVA > jar -c -f test.jar -C java7 . --release 9 -C java9. Warning: entry META-INF/versions/9/com/zyiz/Tester.java, multiple resources with same name
使用JDK 7运行,如下所示 -
C:\JAVA > java -cp test.jar com.zyiz.Tester Inside Java 7
使用JDK 9运行,如下所示 -
C:\JAVA > java -cp test.jar com.zyiz.Tester Inside Java 9
上一篇:Java9 JavaDocs
下一篇:Java9集合工厂方法
- Java教程
- Vim教程
- Swing教程
- Spring教程
- Spring Web Services教程
- Spring MVC教程
- Spring JDBC教程
- Spring Cloud教程
- Spring Boot教程
- Spring Boot CLI教程
- Spring Batch教程
- Spring AOP教程
- PDFBox教程
- JSP教程
- JSF教程
- JPA教程
- Java面向对象设计
- Java设计模式
- Java虚拟机教程
- Java泛型教程
- Java正则表达式教程
- Java数据类型教程
- Java并发编程教程
- Java密码学教程
- Java多线程教程
- Java国际化(i18n)教程
- JavaFX教程
- Java9教程
扫描二维码
程序员编程王