建置 Java 模組範例
版本 8.13
您可以在支援 Gradle 的 IDE 中開啟此範例。 |
此範例展示如何建立包含 Java 模組的多專案。Java 模組是 Java 本身的一項功能,自 Java 9 起可用,可實現更好的封裝。
在 Gradle 中,每個包含 Java 原始碼的來源集都可以透過新增 module-info.java
檔案轉換為模組。通常,在像這樣的 Java 模組專案中,子專案的主要來源集代表一個模組。
src
└── main
└── java
└── module-info.java
在 module-info.java
檔案中,您可以使用關鍵字(例如 requires
或 requires transitive
)定義對其他模組的相依性。這些對應於在 Gradle 建置檔案中定義的 implementation
和 api
相依性。此外,模組會exports
匯出應對消費者可見的套件。其他套件在模組外部不可見。
module org.gradle.sample.utilities {
requires transitive org.gradle.sample.list;
exports org.gradle.sample.utilities;
}
需要存取模組內部的單元(白箱)測試可以透過不將 module-info.java
新增到測試來源集中,以傳統方式編寫。在測試執行中,模組隨後被視為標準 Java 函式庫,且封裝已停用。
黑箱(例如整合)測試,在測試執行期間也應遵循封裝規則,可以透過將對應的測試來源集本身轉換為模組(透過新增 module-info.java
)來編寫。這在 此擴充範例 中顯示。
如需更多資訊,請參閱 Java 函式庫外掛中的 Java 模組支援、應用程式外掛中的 Java 模組支援,以及 測試 Java 模組。