Java 9是一种称为模块的新型编程组件.模块是一个自描述的代码和数据集合,并有一个名称来识别它.
使用Modules组件,以下增强功能已添加到Java 9 :
引入了新的可选阶段链接时间.此阶段介于编译时和运行时之间.在此阶段,可以组装和优化一组模块,使用jlink工具制作自定义运行时映像.
javac,jlink和java有其他选项指定模块路径,进一步定位模块的定义.
JAR格式更新为模块化JAR,其根目录中包含module-info.class文件.
引入了JMOD格式,一种打包格式(类似于JAR),可以包含本机代码和配置文件.
按照创建模块的步骤说com.it1352.greetings.
创建文件夹C:\> JAVA\src.现在创建一个文件夹com.it1352.greetings,它与我们正在创建的模块的名称相同.
创建模块 - c:\>中的info.java:带有以下代码的.greetings文件夹.
module-info.java
module com.it1352.greetings { }
module- info.java是用于创建模块的文件.在这一步中,我们创建了一个名为com.it1352.greetings的模块.按照惯例,此文件应驻留在名称与模块名称相同的文件夹中.
在模块中添加源代码.在C:\>JAVA\src\com.it1352.greetings\com\it1352\greetings\Java9Tester.java
package com.it1352.greetings; public class Java9Tester { public static void main(String[] args) { System.out.println("Hello World!"); } }
按照惯例,模块的源代码位于同一目录中,即模块的名称.
创建文件夹C:\> JAVA\mods.现在创建一个com.it1352.greetings文件夹,它与我们创建的模块名称相同.现在将模块编译为mods目录.
C:/ > JAVA > javac -d mods/com.it1352.greetings src/com.it1352.greetings/module-info.java src/com.it1352.greetings/com/it1352/greetings/Java9Tester.java
让我们运行模块来查看结果.运行以下命令.
C:/>JAVA>java --module-path mods -m com.it1352.greetings/com.it1352.greetings.Java9Tester
这里module-path提供模块位置为mods,-m表示主模块.
它将在控制台上打印以下输出.
Hello World!