Java 9 模块系统

Java 教程 · 2019-02-09 19:59:27

Java 9 最大的变化之一是引入了模块系统(Jigsaw 项目)。

模块就是代码和数据的封装体。模块的代码被组织成多个包,每个包中包含Java类和接口;模块的数据则包括资源文件和其他静态信息。

Java 9 模块的重要特征是在其工件(artifact)的根目录中包含了一个描述模块的 module-info.class 文 件。 工件的格式可以是传统的 JAR 文件或是 Java 9 新增的 JMOD 文件。这个文件由根目录中的源代码文件 module-info.java 编译而来。该模块声明文件可以描述模块的不同特征。

在 module-info.java 文件中,我们可以用新的关键词module来声明一个模块,如下所示。下面给出了一个模块com.mycompany.mymodule的最基本的模块声明。

module com.codercto.mymodule {
}

创建模块

接下来我们创建一个 com.codercto.greetings 的模块。

第一步

创建文件夹 C:\>JAVA\src,然后在该目录下再创建与模块名相同的文件夹 com.codercto.greetings。

第二步

在 C:\>JAVA\src\com.codercto.greetings 目录下创建 module-info.java 文件,代码如下:

module com.codercto.greetings { }

module-info.java 用于创建模块。这一步我们创建了 com.codercto.greetings 模块。

第三步

在模块中添加源代码文件,在目录 C:\>JAVA\src\com.codercto.greetings\com\codercto\greetings 中创建文件 Java9Tester.java,代码如下:

package com.codercto.greetings;

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

第四步

创建文件夹 C:\>JAVA\mods,然后在该目录下创建 com.codercto.greetings 文件夹,编译模块到这个目录下:

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

第五步

执行模块,查看输出结果:

C:/>JAVA> java --module-path mods -m com.codercto.greetings/com.codercto.greetings.Java9Tester
Hello World!

module-path 指定了模块所在的路径。

-m 指定主要模块。

点击查看所有 Java 教程 文章: https://www.codercto.com/courses/l/12.html

查看所有标签

惡血

惡血

[美] 约翰·凯瑞鲁 / 林锦慧 / 商業周刊 / 2018-9-20 / NT$430

--新創神話!?揭露3000億獨創醫療科技的超完美騙局-- 她被譽為女版賈伯斯、《富比世》全球最年輕的創業女富豪, 如何用「一滴血」顛覆血液檢測、翻轉醫療產業? 一項即將改變你我健康的醫療檢測新科技, 而它的技術來自--謊言! ◎即將改編成電影,由奧斯卡影后珍妮佛‧勞倫斯(Jennifer Lawrence)主演 ◎榮登《紐約時報》、《出版人週刊》暢銷榜 ......一起来看看 《惡血》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

Base64 编码/解码
Base64 编码/解码

Base64 编码/解码

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具