📜  Java 9-模块系统

📅  最后修改于: 2020-11-15 03:13:25             🧑  作者: Mango


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

特征

借助模块组件,Java 9中添加了以下增强功能-

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

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

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

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

创建模块

按照创建模块的步骤操作,请说com.tutorialspoint.greetings。

第1步

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

第2步

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

module-info.java

module com.tutorialspoint.greetings { }

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

第三步

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

Java9Tester.java

package com.tutorialspoint.greetings;

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

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

第4步

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

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

第5步

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

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

在这里,模块路径以mods的形式提供模块位置,-m表示主模块。

输出

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

Hello World!