1. 程式人生 > >IntelliJ idea下的專案結構

IntelliJ idea下的專案結構

IntelliJ IDEA 的 project 和 module 是啥關係?

使用基於IntelliJ的IDE,如phpstorm、android studio都會對 project 和 module 的關係比較糊塗,簡單的概括如下:

IntelliJ系中的 Project  相當於Eclipse系中的  Workspace ;

IntelliJ系中的 Module  相當於Eclipse系中的  Project ;

IntelliJ中一個 Project  可以包括多個  Module ;

Eclipse中一個 Workspace  可以包括多個  Project

PhpStorm中似乎在弱化 Module 的存在,把 File 選單下的 New Module  選單專案直接刪除了。

在Android studio中仍存在:

Android studio中,一個Project代表一個完整的APP,Module表示APP中的一些依賴庫或獨立開發的模組。比如可以新建一個library做為module,然後在主APP上點右鍵 open module setting的Dependencies中新增一個模組依賴。然後主APP中就可以使用module中的類了。

之前是用eclipse的.idea的文件是這樣寫到的:


在idea中建立一個分層(檢視層、業務邏輯層、資料訪問層)的專案步驟如下:

1.      建立一個project,idea在建立project的時候會預設建立一個module,此時,給這個project和module命名(比如hello_client,表示這是專案的客戶端也就是檢視層),並且指定專案存放路徑。

2.      新建一個module,新建的時候路徑指定為和上面的hello_client同級。命名為hello_service,表明這是專案的業務邏輯層。

3.      新建一個module,命名為hello_dal,表示這是專案的資料訪問層,同上,此module的目錄指定為和hello_client、hello_service同級。

4.      此時在project視窗中會看到並列的三個module。開發的時候就可以在不同的層次上放置不同的程式碼。如下圖:


圖:三個同級的module代表專案中的三個不同層

5.      在專案中hello_client會引用hello_service的程式碼,而hello_service會引用hello_dal的程式碼。在idea中新增引用的方式為:

a)        選中任意一個module,按F4進入project structure;

b)        選擇左側的modules選單;

c)        選擇中間的hello_client,選中右側的dependencies選項卡,點選右側的綠色+按鈕,選擇modeule dependecy,在彈出的選擇框中選擇hello_service。

d)        這樣就為hello_client添加了hello_service的引用。直接在hello_client中引用hello_service的程式碼即可。

e)        同理,新增hello_service對hello_dal的引用。


圖:hello_client新增對hello_service的引用