- Java 9 教程
- Java 9 - 主页
- Java 9 - 概述
- Java 9 - 环境设置
- Java 9 - 模块系统
- Java 9 - REPL(JShell)
- Java 9 - 改进的 JavaDocs
- Java 9 - 多版本 JAR
- Java 9 - 集合工厂方法
- Java 9 - 私有接口方法
- Java 9 - 流程 API 改进
- Java 9 - 流 API 改进
- 尝试资源改进
- 增强的@Deprecated注释
- 内部类钻石运算符
- 可选的类改进
- Java 9 - 多分辨率图像 API
- CompletableFuture API 改进
- Java 9 - 其他功能
- java9 有用的资源
- Java 9 - 问题与解答
- Java 9 - 快速指南
- Java 9 - 有用的资源
- Java 9 - 讨论
Java 9 - 模块系统
Java 9 引入了一种称为模块的新型编程组件。模块是代码和数据的自描述集合,并有一个名称来标识它。
特征
通过 Modules 组件,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 。
模块信息.java
module com.tutorialspoint.greetings { }
module-info.java 是用于创建模块的文件。在此步骤中,我们创建了一个名为 com.tutorialspoint.greetings 的模块。按照约定,该文件应驻留在名称与模块名称相同的文件夹中。
步骤3
在模块中添加源代码。使用以下代码在 C:\>JAVA\src\com.tutorialspoint.greetings\com\tutorialspoint\greetings 文件夹中创建 Java9Tester.java。
Java9测试器.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
这里 module-path 提供了 mods 的模块位置,-m 表示主模块。
输出
它将在控制台上打印以下输出。
Hello World!