目录

Java 9 - 模块系统( Module System)

Java 9是一种称为模块的新型编程组件。 模块是代码和数据的自描述集合,并具有用于标识它的名称。

特点 (Features)

使用Modules组件,Java 9中添加了以下增强功能 -

  • 引入了新的可选阶段,链接时间。 此阶段介于编译时和运行时之间。 在此阶段,可以组装和优化一组模块,使用jlink工具制作自定义运行时映像。

  • javac,jlink和java有其他选项来指定模块路径,这些选项进一步定位了模块的定义。

  • JAR格式更新为模块化JAR,其根目录中包含module-info.class文件。

  • 引入了JMOD格式,一种打包格式(类似于JAR),可以包含本机代码和配置文件。

创建模块

按照创建模块的步骤说com.iowiki.greetings。

Step 1

创建一个文件夹C:\> JAVA\src。 现在创建一个com.iowiki.greetings文件夹,它与我们正在创建的模块名称相同。

Step 2

使用以下代码在C:\> JAVA\src\com.iowiki.greetings文件夹中创建module-info.java。

module-info.java

module com.iowiki.greetings { }

module-info.java是用于创建模块的文件。 在这一步中,我们创建了一个名为com.iowiki.greetings的模块。 按照惯例,此文件应驻留在名称与模块名称相同的文件夹中。

Step 3

在模块中添加源代码。 使用以下代码在C:\> JAVA\src\com.iowiki.greetings\com\iowiki\greetings文件夹中创建Java9Tester.java。

Java9Tester.java

package com.iowiki.greetings;
public class Java9Tester {
   public static void main(String[] args) {
      System.out.println("Hello World!");
   }
}

按照惯例,模块的源代码位于同一目录中,即模块的名称。

Step 4

创建一个文件夹C:\> JAVA\mods。 现在创建一个com.iowiki.greetings文件夹,它与我们创建的模块名称相同。 现在将模块编译为mods目录。

C:/ > JAVA > javac -d mods/com.iowiki.greetings 
   src/com.iowiki.greetings/module-info.java 
   src/com.iowiki.greetings/com/iowiki/greetings/Java9Tester.java

Step 5

让我们运行模块来查看结果。 运行以下命令。

C:/>JAVA>java --module-path mods -m com.iowiki.greetings/com.iowiki.greetings.Java9Tester

这里module-path将模块位置提供为mods,-m表示主模块。

输出 (Output)

它将在控制台上打印以下输出。

Hello World!
↑回到顶部↑
WIKI教程 @2018