IDEA 中最重要的各種設置項,就是這個 Project Structre 了,關乎你的項目運行,缺胳膊少腿都不行。

1.1 Project

-
Project name :定義項目的名稱;
-
Project SDK: 設置該項目使用的JDK,也可以在此處新添加其他版本的JDK;
-
Project language level: 這個和JDK的類似,區別在於,假如你設置了JDK1.8,卻只用到1.6的特性,那么這里可以設置語言等級為1.6,這個是限定項目編譯檢查時最低要求的JDK特性;
-
Project compiler output: 項目中的默認編譯輸出總目錄,如圖黃色部分,實際上每個模塊可以自己設置特殊的輸出目錄(Modules - (project) - Paths - Use module compile output path),所以這個設置有點雞肋。
1.2 Modules


(此處的兩個項目引入僅作示例參考)
-
Sources: 顯示項目的目錄資源,那些是項目部署的時候需要的目錄,不同顏色代表不同的類型;
-
Paths: 可以指定項目的編譯輸出目錄,即項目類和測試類的編譯輸出地址(替換掉了Project的默認輸出地址)
-
Dependencies: 項目的依賴




1.3 Libraries
1.4 Facets
When you select a framework (a facet) in the element selector pane, the settings for the framework are shown in the right-hand part of the dialog.
(當你在左邊選擇面板點擊某個技術框架,右邊將會顯示這個框架的一些設置)
1.5 Artifacts(Web部署-2)
An artifact is an assembly of your project assets that you put together to test, deploy or distribute your software solution or its part. Examples are a collection of compiled Java classes or a Java application packaged in a Java archive, a Web application as a directory structure or a Web application archive, etc.
即編譯后的Java類,Web資源等的整合,用以測試、部署等工作。再白話一點,就是說某個module要如何打包,例如war exploded、war、jar、ear等等這種打包形式。某個module有了 Artifacts 就可以部署到應用服務器中了。

-
編譯,IDEA在保存/自動保存后不會做編譯,不像Eclipse的保存即編譯,因此在運行server前會做一次編譯。編譯后class文件存放在指定的項目編譯輸出目錄下(見1.2.2);
-
根據artifact中的設定對目錄結構進行創建;
-
拷貝web資源的根目錄下的所有文件到artifact的目錄下(見1.2.3);
-
拷貝編譯輸出目錄下的classes目錄到artifact下的WEB-INF下(見1.2.2);
-
拷貝lib目錄下所需的jar包到artifact下的WEB_INF下;
-
運行server,運行成功后,如有需要,會自動打開瀏覽器訪問指定url。
參考鏈接
https://www.jetbrains.com/help/idea/2016.3/dependencies-tab.html?search=project%20structurehttps://www.jetbrains.com/help/idea/2016.3/working-with-artifacts.html#artifact_defhttp://www.cnblogs.com/52php/p/5677661.htmlhttp://white-crucifix.iteye.com/blog/2070830https://my.oschina.net/lujianing/blog/186737
作者:dulk
來源:www.cnblogs.com/deng-cc/p/6416332.html
2、
3、
4、
5、
點擊「閱讀原文」和棧長學更多~