Well, Java 9 is available so let’s make modules!
模塊化在Java9中是炒雞炒雞重要的!今後,模塊將是應用程序的基礎構建單位。無論是使用動態語言或靜態語言編寫,模塊都是應用程序的一個重要組成部分,且模塊遵循單一功能原則。你可以將任意方法稱爲模塊,正如函數式編程也是基於模塊一樣。好了,總之,你get到這個點之後就記住:以後模塊很重要很重要很重要 The important thing is need to be said 3 times!
步驟:
- 步驟1:下載Java 9並安裝
- 步驟2:創建一個模塊java文件
- 步驟3:模塊文件路徑
- 步驟4:編寫一個模塊
- 步驟5:向我們的模塊添加代碼
- 步驟6:編譯我們的模塊
- 步驟7:運行我們的模塊
1、下載Java 9並安裝
下載地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk9-downloads-3848520.html
下載後,只需點擊它即可進行安裝(如果您在MacOS上),並確認已安裝:
tomerb@tomerb-mac.local:~$ java --version
java 9-ea
Java(TM) SE Runtime Environment (build 9-ea+164)
Java HotSpot(TM) 64-Bit Server VM (build 9-ea+164, mixed mode)
tomerb@tomerb-mac.local:~$ cd ~/tmp
tomerb@tomerb-mac.local:~$ mkdir -p ~/tmp/java9-modules
tomerb@tomerb-mac.local:~$ cd ~/tmp/java9-modules
2、創建一個模塊java文件
在Java 9中,爲了定義模塊,需要爲java文件設定一個特別的名字,建議爲: module-info.java
3、模塊文件路徑
module-info.java
應該放在哪裏呢?按照慣例,應該把它放在和模塊名相同的目錄下。
如果你的模塊名稱是
com.me.mymodule
那麼你的模塊 module-info.java 應該放在:
src/com.me.mymodule
這使您的 module-info.java 文件放在:
src/com.me.mymodule/module-info.java 路徑。
得到它了? <module-path> == <module name>
4、編寫一個模塊
現在我們知道我們的模塊 filename 和我們的模塊 filepath,我們來編寫一個具有這個命名和文件夾約定的模塊:
tomerb@tomerb-mac.local:~/tmp/java9-modules$ mkdir -p src/com.me.mymodule
tomerb@tomerb-mac.local:~/tmp/java9-modules$ vi src/com.me.mymodule/module-info.java
module com.me.mymodule { }
至此,我們就完成了一個模塊的編寫!
5、向我們的模塊添加代碼
在這一步中,我們將向我們的模塊添加一些代碼!在同一目錄下創建一個新的java文件來作爲我們的模塊:
$ mkdir -p src/com.me.mymodule/com/me/mymodule
$ vi src/com.me.mymodule/com/me/mymodule/Main.java
注意我們代碼中的目錄名稱。爲什麼這樣做呢? 我們首先輸入我們模塊所在的路徑,然後我們爲源代碼創建完整的包名稱。在這種情況下, /com/me/mymodule
在 /com.me.mymodule
的上層。只是我們的源文件屬於我們的模塊,並且模塊已經在Java 9慣例的標準模塊目錄中。
所以,我們就在Main.java編寫hello world:
package com.me.mymodule;
public class Main {
public static void main(String[] args) {
System.out.println("Hello World from Module! :)"); // nothing special here, standard java < 9 class.
}
}
6、編譯我們的模塊
首先製作 mods
目錄(我們將進一步傳遞給: java --module-path
):
$ mkdir -p mods/com.me.mymodule
$ javac -d mods/com.me.mymodule \
src/com.me.mymodule/module-info.java \
src/com.me.mymodule/com/me/mymodule/Main.java
輕動你高貴的手指,讓編譯器再跑一會兒!
7、運行我們的模塊
$ java --module-path mods -m com.me.mymodule/com.me.mymodule.Main
Hello World from Module! :)
總結
在這部分中,我們下載了Java 9,創建了一個模塊,向其中添加了一個源文件,並運行它。我們看到在創建源代碼時創建模塊路徑和類似的東西時,需要遵循一個命名約定。
原文:https://dzone.com/articles/java-9-tutorial-step-by-step-from-zero-to-modules