IntelliJ IDEA中Project與Module的概念以及區(qū)別
在 IntelliJ IDEA 中,沒有類似于 Eclipse 工作空間(Workspace)的概念,而是提出了Project和Module這兩個(gè)概念。接下來,就讓我們一起看看 IntelliJ IDEA 官方是如何描述兩者的吧!
對(duì)于 Project,IntelliJ IDEA 官方是這樣介紹的:
A project is a top-level organizational unit for your development work in IntelliJ IDEA. In its finished form, a project may represent a complete software solution. A project is a collection of:
- Your work results: source code, build scripts, configuration files, documentation, artifacts, etc.
- SDKs and libraries that you use to develop, compile, run and test your code.
- Project settings that represent your working preferences in the context of a project.
A project has one or more modules as its parts.
對(duì)于 Module,IntelliJ IDEA 官方是這樣介紹的:
- A module is a part of a project that you can compile, run, test and debug independently.
- Modules are a way to reduce complexity of large projects while maintaining a common (project) configuration.
- Modules are reusable: if necessary, a module can be included in more than one project.
通過上面的介紹,我們知道:在 IntelliJ IDEA 中Project是最頂級(jí)的結(jié)構(gòu)單元,然后就是Module,一個(gè)Project可以有多個(gè)Module。目前,主流的大型項(xiàng)目結(jié)構(gòu)基本都是多Module的結(jié)構(gòu),這類項(xiàng)目一般是按功能劃分的,比如:user-core-module、user-facade-module和user-hessian-module等等,模塊之間彼此可以相互依賴。通過這些Module的命名可以看出,它們都是處于同一個(gè)項(xiàng)目中的模塊,彼此之間是有著不可分割的業(yè)務(wù)關(guān)系。因此,我們可以大致總結(jié)出:一個(gè)Project是由一個(gè)或多個(gè)Module組成,
當(dāng)為單Module項(xiàng)目的時(shí)候,這個(gè)單獨(dú)的Module實(shí)際上就是一個(gè)Project;當(dāng)為多Module項(xiàng)目的時(shí)候,多個(gè)模塊處于同一個(gè)Project之中,此時(shí)彼此之間具有互相依賴的關(guān)聯(lián)關(guān)系。
此外, IntelliJ IDEA 的Project是一個(gè)不具備任何編碼設(shè)置、構(gòu)建等開發(fā)功能的概念,其主要作用就是起到一個(gè)項(xiàng)目定義、范圍約束、規(guī)范類型的效果,或許,我們也可以簡(jiǎn)單地理解Project就是一個(gè)單純的目錄,只是這個(gè)目錄在命名上必須有其代表性的意義。在缺省情況下,IntelliJ IDEA 是默認(rèn)單Project單Module的,這時(shí)Project和Module合二為一,在沒有修改存儲(chǔ)路徑的時(shí)候,顯然Project對(duì)Module具有強(qiáng)約束作用!不過說實(shí)話,這里就是將Module的內(nèi)容放在了Project的目錄下,實(shí)際上還是Module自己約束自己。
標(biāo)注 1:Project name
,項(xiàng)目名稱;
標(biāo)注 2:Project location
,項(xiàng)目存儲(chǔ)地址;
標(biāo)注 3:Module name
,模塊名稱;
標(biāo)注 4:Module file location
,模塊存儲(chǔ)地址。
如上圖所示,通過觀察Project和Module的存儲(chǔ)地址,我們可以發(fā)現(xiàn),IntelliJ IDEA 在此處建立了一個(gè)名為user-core-module
的目錄,并將其放在了名為user-modules-project
的目錄下,而沒有將兩個(gè)目錄合二為一,也就為我們建立多Module的Project作了準(zhǔn)備。
如上圖所示,顯然user-modules-project
僅表現(xiàn)為一個(gè)目錄而已。
如上圖所示,依次點(diǎn)擊File -> New -> Module
,進(jìn)入如下界面:
如上圖所示,輸入Module name
之后,Content root
和Module file location
自動(dòng)發(fā)生改變,然后點(diǎn)擊Finish,完成:
如上圖所示,我們?cè)陧?xiàng)目user-modules-project
中,建立了兩個(gè)Module,分別為user-core-module
和user-hessian-module
,然后我們?cè)賮砜纯创鎯?chǔ)目錄:
如上圖所示,顯然在user-modules-project
目錄中,又多了一個(gè)名為user-hessian-module
的目錄。
至此,多Module的Project構(gòu)建完成!
到此這篇關(guān)于IntelliJ IDEA中Project與Module的概念以及區(qū)別的文章就介紹到這了,更多相關(guān)IntelliJ IDEA中Project與Module區(qū)別內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
IDEA實(shí)用好用插件推薦及使用方法教程詳解(必看)
這篇文章主要介紹了IDEA實(shí)用好用插件推薦及使用方法教程,本文通過實(shí)例截圖相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-04-04Java將文件分割為多個(gè)子文件再將子文件合并成原始文件的示例
本篇文章主要介紹了Java將文件分割為多個(gè)子文件再將子文件合并成原始文件的示例,具有一定的參考價(jià)值,有興趣的可以了解一下。2017-02-02SpringBoot2.1.3修改tomcat參數(shù)支持請(qǐng)求特殊符號(hào)問題
最近遇到一個(gè)問題,比如GET請(qǐng)求中,key,value中帶有特殊符號(hào),請(qǐng)求會(huì)報(bào)錯(cuò)。接下來通過本文給大家分享解決SpringBoot2.1.3修改tomcat參數(shù)支持請(qǐng)求特殊符號(hào) ,需要的朋友可以參考下2019-05-05使用Spring CROS解決項(xiàng)目中的跨域問題詳解
這篇文章主要介紹了使用Spring CROS解決項(xiàng)目中的跨域問題詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01java中springMVC獲取請(qǐng)求參數(shù)的方法
這篇文章主要介紹了java中springMVC獲取請(qǐng)求參數(shù)的方法,springmvc是spring框架的一個(gè)模塊,springmvc和spring無需通過中間整合層進(jìn)行整合,需要的朋友可以參考下2023-05-05springboot啟動(dòng)后和停止前執(zhí)行方法示例詳解
這篇文章主要介紹了springboot啟動(dòng)后和停止前執(zhí)行方法,本文通過示例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-08-08Spring Cloud Stream微服務(wù)消息框架原理及實(shí)例解析
這篇文章主要介紹了Spring Cloud Stream微服務(wù)消息框架原理及實(shí)例解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-06-06