IntelliJ IDEA使用Gradle項目

2018-04-09 10:19 更新

使用Gradle項目

IntelliJ IDEA 可讓您管理 Gradle 項目。您可以鏈接、忽略項目并同步 Gradle 和 IntelliJ IDEA 項目中的更改。此外,您可以配置 Gradle 組合構(gòu)建。

將Gradle項目鏈接到IntelliJ IDEA項目

當(dāng)通過從 Gradle 模型導(dǎo)入來創(chuàng)建項目時,會自動建立項目的鏈接,并啟用 Gradle Projects 工具窗口。

如果 IntelliJ IDEA 項目未鏈接到 Gradle 項目,則 Gradle 工具窗口將被禁用。在這種情況下,IntelliJ IDEA 會顯示帶有鏈接的消息,該鏈接可以讓您快速導(dǎo)入 Gradle 項目并啟用 Gradle Projects 工具窗口。如果 Gradle Projects 工具窗口處于活動狀態(tài),那么至少有一個 Gradle 項目已鏈接。

  1. 打開 Gradle Projects 工具窗口。
  2. 在 Gradle Projects 工具窗口中,單擊 以附加 gradle 項目。
  3. 在打開的對話框中,選擇所需的 build.gradle 文件,然后單擊“確定”。
  4. 在從 Gradle 導(dǎo)入模塊窗口中,為要嘗試鏈接的 Gradle 項目指定選項,然后單擊“確定”。該項目已鏈接。該 Gradle Projects 工具窗口中顯示的工具欄和 Gradle 實體的樹視圖。

或者,如果您將項目作為Gradle模塊從現(xiàn)有源導(dǎo)入,則可以鏈接您的 Gradle 項目 。在這種情況下,即使 Gradle Projects 工具窗口不可用,也可以鏈接 Gradle 項目。

瀏覽到build.gradle文件

  1. 在 Gradle Projects 工具窗口中,右鍵單擊鏈接的項目。
  2. 從上下文菜單中選擇 。IntelliJ IDEA 導(dǎo)航到適當(dāng)?shù)?Gradle 配置文件,并在編輯器中打開相關(guān) build.gradle 文件。

分離或忽略鏈接的Gradle項目

提示:如果您從 build.gradle 文件中手動刪除模塊,請在進行部分導(dǎo)入時忽略模塊,或通過選擇每個源集的創(chuàng)建單獨模塊或使用限定名稱選項來更改導(dǎo)入設(shè)置中的模塊名稱 - 在所有這些情況下當(dāng)您導(dǎo)入項目時,IntelliJ IDEA 會提示您恢復(fù)已刪除的模塊。您可以在“孤立模塊(Orphan Modules)”對話框中選擇要恢復(fù)的那個。

  1. 在 Gradle Projects 工具窗口中,右鍵單擊鏈接的項目。
  2. 從上下文菜單中選擇 (Delete)。或者,您可以選擇鏈接的項目,然后單擊 Gradle 工具欄上的 。
  3. 在“導(dǎo)入Gradle項目(Import Gradle Projects)”彈出窗口中,如果不想從 IntelliJ IDEA Projects 工具窗口中刪除項目,請清除模塊中的復(fù)選框。
  4. 點擊“確定”。Gradle 項目與 IntelliJ IDEA 項目分離,不再同步。

您也可以使用 Ignore Gradle Project 選項取消激活 Gradle 項目。

  1. 在 Gradle Projects 工具窗口中,右鍵單擊要忽略的項目。
  2. 在上下文菜單中,選擇“忽略Gradle項目(Ignore Gradle Project)”。
  3. 在打開的窗口中,選擇要取消激活的項目和模塊,然后單擊“確定”。在這種情況下,IntelliJ IDEA 會從 IntelliJ IDEA Project 工具窗口中刪除選定的項目和模塊,并且不會再導(dǎo)入它們。但是,您仍然可以在 Gradle Projects 工具窗口中看到忽略的 Gradle 模塊和項目列表。如果您想激活您的 Gradle 項目或模塊,請從上下文菜單中選擇 Unignore Gradle Projects。

刷新鏈接的Gradle項目

  1. 在 Gradle Projects 工具窗口中,右鍵單擊鏈接的項目。
  2. 從上下文菜單中選擇 。點擊這個圖標(biāo)后,IntelliJ IDEA 分析 Gradle Projects 工具窗口中的項目結(jié)構(gòu)。IntelliJ IDEA 無法刷新您的項目的一部分,它會刷新整個項目,包括模塊和依賴關(guān)系。如果通過“項目結(jié)構(gòu)(Project Structure)”對話框(單擊主菜單上的 )配置依賴項,則依賴項只會顯示在 IntelliJ IDEA Projects 工具窗口中,而不會顯示在 Gradle Projects 工具窗口中。請注意,下次刷新項目時,IntelliJ IDEA 將刪除添加的依賴項,因為 IntelliJ IDEA 將 Gradle 配置視為單一來源。

如果您在創(chuàng)建或?qū)?Gradle 項目時選擇了“使用自動(Use auto-import)”導(dǎo)入,則每次更改項目時都會自動重新導(dǎo)入項目。

配置Gradle組合構(gòu)建

在開始配置組合構(gòu)建之前,請確保為項目配置了 Gradle 3.1或更高版本。

另外請注意,使用 Gradle 組合構(gòu)建有一些限制。

您可以使用該 settings.gradle 文件為您的 Gradle 組合構(gòu)建包含 Gradle 構(gòu)建 。

  1. 在編輯器中打開 settings.gradle 文件。
  2. 使用該 includeBuild 命令,指定要添加為項目依賴關(guān)系的構(gòu)建的位置。

您也可以使用 Gradle 項目工具窗口配置您的組合構(gòu)建。

  1. 打開一個 Gradle 項目。
  2. 鏈接您想用于組合構(gòu)建的其他 Gradle 項目。
  3. 在 Gradle 項目工具窗口中,右鍵單擊您的主項目,然后從上下文菜單中選擇 Composite Build Configuration。
  4. 在 Gradle Project Build Composite 對話框中,選擇要包含在 Gradle 組合構(gòu)建中的項目。
  5. 刷新您的主 Gradle 項目。IntelliJ IDEA 找到包含的 Gradle 項目并將它們視為 IntelliJ IDEA 模塊。

使用Gradle源集

IntelliJ IDEA 允許您在解析 Gradle 項目時使用 Gradle 源代碼集。源集在 IntelliJ IDEA 項目中被視為模塊。您可以聲明一個自定義源集,IntelliJ IDEA 將其作為模塊添加到項目中。

  1. 當(dāng)您創(chuàng)建或?qū)?Gradle 項目時,請選擇“為每個源集使用單獨的模塊(use separate module per source set)”?;蛘?,單擊 Gradle 項目工具窗口中的 圖標(biāo)并在 Gradle 設(shè)置頁面上選擇相同的選項。
  2. IntelliJ IDEA 創(chuàng)建一個主源集目錄,其中包含兩個源集 - main 和 test。為了編譯測試源,對主源集具有依賴性。
    使用Gradle項目

您可以添加自定義源集。

  1. 在編輯器中打開 gradle.build 文件。
  2. 聲明一個自定義源集。(在我們的例子中,它是 api)
    使用Gradle項目
    (這個源集包含沒有實現(xiàn)的接口,接口的實現(xiàn)在默認的主源集中。)
  3. 打開 Gradle projects 工具窗口,查看 IntelliJ IDEA 添加了 api 源集。
    使用Gradle項目
    測試源集合包含適當(dāng)?shù)囊蕾囮P(guān)系。
    使用Gradle項目
    請注意,默認的主源集對 api 源集的輸出具有編譯依賴性。如果您編譯主源集中的源代碼,Gradle 將自動調(diào)用該 apiClasses 任務(wù)。
    使用Gradle項目
  4. 打開項目結(jié)構(gòu)( )。請注意,所有源集都表示為分組到單個模塊中的單獨模塊。
    使用Gradle項目
    如果您單擊測試模塊并選擇依賴關(guān)系選項卡,您將看到源集的依賴關(guān)系列表。
    使用Gradle項目

您還可以添加自定義測試,并使用源集功能將它們與主要測試分開運行。

  1. 聲明一個源代碼的方式與您聲明自定義源代碼集的方式相同。除了源代碼集的名稱之外,還要指定輸出目錄和將運行測試的任務(wù)。
    使用Gradle項目
  2. 在 Gradle 項目工具窗口中,單擊:任務(wù)|其他(Tasks | other)。
  3. 在打開的列表中,雙擊 integrationTest 運行集成測試。
    使用Gradle項目

將構(gòu)建和運行委派給Gradle

IntelliJ IDEA 可讓您將所有構(gòu)建和運行操作委托給 Gradle。當(dāng)你建立一個項目(Build | Build Project)時,IntelliJ IDEA 使用 Gradle 調(diào)用正確的任務(wù)。此外,運行菜單中的運行和調(diào)試操作在 Gradle 中執(zhí)行。

  1. 點擊 Gradle 項目工具窗口中的 圖標(biāo)。或者,在主菜單上選擇:文件|設(shè)置|構(gòu)建,執(zhí)行,部署|構(gòu)建工具| Gradle(File | Settings | Build, Execution, Deployment |Build Tools |Gradle)。
  2. 點擊 Gradle,然后從下拉列表中選擇 Runner。
  3. 在 Runner 頁面上,選擇“將IDE構(gòu)建/運行操作委托給Gradle(Delegate IDE build/run actions to Gradle)”。
    使用Gradle項目
    請注意,“運行測試使用(Run test using)”選項保持活動狀態(tài),即使您將所有構(gòu)建和運行操作委派給Gradle,您也可以選擇運行測試的方式。
  4. 點擊“確定”。
  5. 用該 build.gradle 文件打開任何 Java 項目。
  6. 調(diào)用生成項目操作(Ctrl+F9)。Gradle 編譯代碼并將其顯示在 Run 工具窗口中。
    使用Gradle項目
  7. 運行你的 main 方法(Ctrl+Shift+F10)。你可以看到 IntelliJ IDEA 使用 Gradle JavaExec 任務(wù)來運行這個類。
    Gradle運行的主要方法

IntelliJ IDEA 還允許您使用 Gradle 構(gòu)建 WAR 或 EAR 工件。

  1. 創(chuàng)建一個 Gradle Web 項目。(有關(guān)更多說明,請參閱創(chuàng)建Gradle項目。)
    使用Gradle項目
  2. 創(chuàng)建 Tomcat 服務(wù)器運行/調(diào)試配置。
    使用Gradle項目
  3. 單擊“部署(Deployment)”選項卡并為您的部署添加工件。
    使用Gradle項目
  4. 點擊 啟動Tomcat服務(wù)器配置。在運行工具窗口中,您可以看到該工件由 Gradle 構(gòu)建,并由 IntelliJ IDEA Tomcat 集成進行部署。
    使用Gradle項目

配置和使用Gradle測試運行器

IntelliJ IDEA 允許您使用不同的測試運行器在 Gradle 項目中執(zhí)行測試。您可以使用 JUnit 來運行測試。在這種情況下,由于增量編譯,測試運行得更快。您可以將測試過程委托給 Gradle。在這種情況下,當(dāng)您運行測試時,您將在持續(xù)集成(CI)服務(wù)器上獲得相同的結(jié)果。另外,無論您的 Gradle 項目多么困難,在命令行中運行的測試都將始終在 IDE 中運行。您也可以決定每個測試使用哪個測試運行器。

  1. 在 Gradle 項目工具窗口中,單擊 圖標(biāo)。
  2. 在 Settings 對話框中,右鍵單擊 Gradle,然后從下拉列表中選擇 Runner。
  3. 在打開的頁面上,在“運行測試使用(Run test using)”下拉列表中,選擇您要用于測試運行的選項。
    使用Gradle項目
    (默認值是 Platform Test Runner。)
  4. 點擊“確定”。
  5. 在您的 Gradle 項目中,在編輯器中,創(chuàng)建或選擇您想要運行的測試。
  6. 從上下文菜單中,選擇 Run <test name>?;蛘?,點擊左側(cè)水槽中的 圖標(biāo)。
    使用Gradle項目
  7. 根據(jù)您選擇的測試運行器,IntelliJ IDEA 以下列方式之一運行測試:
    • 如果您選擇了 Platform Test Runner,IntelliJ IDEA 將使用 JUnit 測試運行器運行測試,并在Run JUnit 工具窗口中顯示輸出。
      使用Gradle項目
    • 如果您選擇了Gradle Test Runner,IntelliJ IDEA 將使用 Gradle 測試運行器運行測試,并在 Run Gradle 工具窗口中顯示輸出 。
      使用Gradle項目
      您也可以選擇運行'name()'以覆蓋您的測試代碼覆蓋范圍。
      使用Gradle項目
    • 如果您選擇 Let me choose per test,IntelliJ IDEA 可讓您選擇 JUnit 或 Gradle 來運行測試。
      使用Gradle項目
      一旦你選擇了測試運行器,IntelliJ IDEA會記住你的選擇并自動使用你選擇的選項來運行你的測試。
    您可以在 Runner 設(shè)置頁面中更改您的選擇。

您也可以選擇 Run 'name()' with coverage 以查看您的測試代碼覆蓋范圍。

使用Gradle項目

它適用于平臺測試運行器以及 Gradle 測試運行器。

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

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號