驗證應用程式模組結構
我們可以透過在 ApplicationModules
實例上呼叫 ….verify()
方法,來驗證我們的程式碼安排是否符合預期的約束。
-
Java
-
Kotlin
ApplicationModules.of(Application.class).verify();
ApplicationModules.of(Application::class.java).verify()
驗證包含以下規則
-
應用程式模組層級不得有循環相依 — 模組之間的相依性必須形成有向無環圖。
-
僅透過 API 套件存取輸出模組 — 所有對應用程式模組內部套件中類型的參考都會被拒絕。詳情請參閱 應用程式模組進階用法。允許相依於 開放應用程式模組 的內部元件。
-
僅允許明確指定的應用程式模組相依性 (選用) — 應用程式模組可以選擇性地透過
@ApplicationModule(allowedDependencies = …)
定義允許的相依性。如果配置了這些,則會拒絕與其他應用程式模組的相依性。詳情請參閱 明確的應用程式模組相依性 和 命名介面。
Spring Modulith 可選擇性地與 jMolecules ArchUnit 程式庫整合,如果存在,則會自動觸發此處描述的 領域驅動設計 驗證規則。