[Gradle中文教程系列]-跟我學Gradle-8.2-多模組專案- 專案結構

PKAQ發表於2016-12-12

在進行介紹之前,這裡有必要先解釋一下專案(project)和模組(module)的概念。Gradle中預設是不存在模組概念的,這裡指的多模組專案構建對應到Gradle中即是多專案構建,為了便於理解,所以本文中一律按多模組進行描述。

關於多專案和多模組的分歧無法溯源,或許是由於eclipseidea不同定義而起吧。在eclipse中不存在模組概念,走的是workspace - working set - project路線,而在idea中,則是按project - module進行組織專案。自從轉為idea黨之後,私以為idea的路子更科學,所以這裡按idea的套路進行描述。

下面展示了分層佈局和水平佈局的兩種多模組專案結構

structure.jpg
   
structure-flat.jpg

  為了更加直觀,這裡專案結構採用了分層佈局的方式。這也是Gradle預設的佈局方式。這裡根專案是必不可少的,儘管在分層佈局中它看上去更像是一個頂級的working set。其中根專案下的build.gradle檔案可以對一些公共屬性、外掛、依賴等進行統一配置,setting.gradle則是描述專案關係的檔案。
  或許你已經注意到,在水平佈局的示例圖中子專案下沒有build.gradle指令碼檔案,這是由於在構建多模組專案時 Gradle 允許你自由的選用集中化配置和分開式配置。在水平佈局的結構圖中,所畫的即是採用集中化配置的結構。

相關文章