在IDEA中建立Java 9 modules(模組)的Hello World
So,那就讓我們來一探究竟什麼是模組化工程。首先,我們建立一個普通的模組工程 IntelliJ IDEA module 其中包含了改變世界的偉大的 “Hello World” 。
IntelliJ IDEA 會引導你在工程中為你的模組建立一個module-info.java
module-info.java
將為你提供一個基礎的模組程式碼結構。
一切聽指揮,黨會指引你正確的道路!
此時,當你在按照以往那樣使用一個Java類時,你就會看到模組化帶來的新姿勢。
Here,IntelliJ IDEA可以幫助你找出問題所在,並提出修復建議。
如你所料,進行這個操作之後IntelliJ IDEA對module-info.java
當然,你也可以嘗試自己編輯module-info.java
檔案,IDEA 會給你完整的補全和提示資訊。
快速修復不僅可用於標準Java模組,還可幫助您自己編寫模組程式碼。如果您嘗試訪問另一個IntelliJ IDEA模組中的程式碼,從一個模組的內部來使用模組化特性 (module-info.java
檔案中會有提示), IntelliJ IDEA 將會提示你如果沒有進行正確的更改,是不能執行的。
首先,有很多提示來幫助你完成更改,所以,一旦module-info.java
檔案所在的模組下有java檔案,你可以快速補齊後面的包路徑。
回到這個被匯入模組的類中來,使用Alt 和 Enter 來獲取fix建議。這裡有兩個步驟:firstly, 模組 one
two
。一旦此操作完成,模組one
的module-info.java
檔案就能關聯模組two
.
這裡有兩個模組,需要格外注意的是:firstly, the IntelliJ IDEA modules 你可能已經熟悉; and secondly, 新的 Java 9 (Jigsaw) 模組被指定使用module-info.java
。 要使用Java模組化特性,每個Java 9模組都需要對應於IntelliJ IDEA模組。還要注意的是(IntelliJ IDEA 2017.1中的最後一個示例所示),需要宣告IntelliJ IDEA模組依賴關係以及Java 9模組依賴關係。所以在最後一個例子中,模組one
two
:
但是在module-info.java
檔案中也需要宣告它是關聯模組two
的: