IntelliJ IDEA內(nèi)容根目錄的使用

2018-10-10 15:25 更新

IntelliJ IDEA 中內(nèi)容根目錄指的是一個(gè)包含組成模塊的所有文件的文件夾。

一個(gè)模塊可以有多個(gè)內(nèi)容根目錄,但是,在大多數(shù)情況下,有一個(gè)內(nèi)容根目錄就足夠了。(在某些情況下,沒有內(nèi)容根的模塊可能是有用的,請參閱沒有內(nèi)容根的模塊:依賴項(xiàng)的集合。)

IntelliJ IDEA 中的內(nèi)容根目錄顯示為 。

內(nèi)容根目錄的文件夾類別

內(nèi)容根目錄中的文件夾可以分配給以下類別:

  • 源根目錄(或源文件夾;顯示為 )。
    通過將文件夾分配給此類別,您可以告知 IntelliJ IDEA 該文件夾及其子文件夾包含應(yīng)編譯為構(gòu)建過程的一部分的源代碼。
    在Java 模塊中,源根目錄中的子文件夾表示您的 Java 包結(jié)構(gòu)。
    您可以為源根目錄(例如 com.mycompany.myapp)指定包前綴,而不是在該源根目錄中創(chuàng)建相應(yīng)的文件夾結(jié)構(gòu)(例如 com/mycompany/myapp)。有關(guān)更多信息,請參閱 Java 源根目錄的包前綴。
    在沒有包前綴和子文件夾的情況下,源根目錄將表示默認(rèn)包(未命名的包)。
  • 生成的源根目錄(即生成的源文件夾;顯示為 ;在某些視圖中 [生成] 文本標(biāo)記被使用)類似于源根目錄。不同之處在于,在執(zhí)行移動類重構(gòu)或使用 "創(chuàng)建類從使用快速修復(fù)" 時(shí),不會將生成的源根建議為目標(biāo)文件夾
  • 測試源根目錄 (或測試源文件夾;顯示為 )。
    這些根目錄類似于源根目錄,但是用于測試的代碼(例如用于單元測試)。測試源文件夾允許您將與測試相關(guān)的代碼與生產(chǎn)代碼分開。
    正常情況下,源和測試源的編譯結(jié)果會放在不同的文件夾中。
  • 生成的測試源根目錄(或生成的測試源文件夾;顯示為 ;在某些視圖中 [生成] 文本標(biāo)記)與測試源根目錄類似。不同之處在于源根目錄和生成的源根目錄之間的差異。
  • 資源根目錄(或資源文件夾;顯示為 ;僅在 Java 模塊中可用)用于應(yīng)用程序中使用的資源文件(圖像,各種配置 XML 和屬性文件等)。
    在構(gòu)建過程中,資源文件夾的所有內(nèi)容都按照原樣復(fù)制到輸出文件夾。
    與源類似,您可以指定生成資源。還可以指定應(yīng)將資源復(fù)制到的輸出文件夾中的哪個(gè)文件夾。
  • 測試資源根目錄(或測試資源文件夾;顯示為 ;僅在 Java 模塊中可用)用于與測試源相關(guān)聯(lián)的資源文件。在所有其他方面,這些文件夾與資源文件夾相似。
  • 排除的根目錄(顯示為  ),是 IntelliJ IDEA “幾乎忽略”的根目錄。
    為排除的文件夾中的文件提供非常有限的編碼協(xié)助。
    排除的文件夾中包含的類不會出現(xiàn)在代碼完成建議列表中,對這些類的引用在編輯器中顯示為未解決。搜索時(shí),IntelliJ IDEA 不會查找排除的文件夾等。排除其內(nèi)容“不太重要”的文件夾可能會提高 IDE 性能。
    通常排除的是編譯輸出文件夾。
    有時(shí),您可能希望將排除的根目錄中的文件夾分配到不同的類別。例如,Maven 構(gòu)建輸出文件夾目標(biāo)可能包含帶有生成源(例如,target/generated-sources)的子文件夾。要處理這種情況,您可以將目標(biāo)文件夾排除,并標(biāo)記 target/generated-sources 為包含生成的源。

Java 源根目錄的包前綴

包前綴指定哪個(gè) Java 包對應(yīng)于一個(gè)文件夾,并可將其分配給以下類別的 Java 源根目錄:

  • 來源
  • 生成的源
  • 測試來源
  • 生成的測試源

如果指定,包前綴將作為相應(yīng)的文件夾結(jié)構(gòu)的等效項(xiàng),否則必須另外創(chuàng)建。

為了說明這一點(diǎn),讓我們假設(shè)你要使用 com.mycompany.myapp 包。您可以在相應(yīng)的源根文件夾 (如 src) 中創(chuàng)建文件夾結(jié)構(gòu) com/mycompany/myapp。

另一種方法是分配 com.mycompany.myapp 到 src 作為其包前綴,并將相應(yīng)的類正確地存儲在 src 中。

沒有內(nèi)容根目錄的模塊:依賴集合

一個(gè)模塊可以單獨(dú)用作其他模塊的依賴項(xiàng)集合。在這種情況下,您可以在相應(yīng)的模塊上添加依賴項(xiàng),而不是單獨(dú)指定必要的依賴項(xiàng)。

用于此目的的模塊顯然不需要內(nèi)容根目錄。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號