VS Code 中的 Java 建置工具
本文件概述如何在 Visual Studio Code 中使用 Java 建置工具。內容涵蓋 Maven for Java 和 Gradle for Java 擴充功能以及其他工具。
如果您在使用以下功能時遇到任何問題,可以透過提交 issue (問題單) 來與我們聯繫。
Maven
Maven 是一個協助您管理 Java 專案並自動化應用程式建置的軟體工具。適用於 Visual Studio Code 的 Maven for Java 擴充功能提供了完整的 Maven 整合支援,讓您可以瀏覽 Maven 專案、執行 Maven 命令,以及執行建置生命週期 (build lifecycle) 與插件 (plugins) 的目標 (goals)。我們建議安裝 Extension Pack for Java,其中已包含 Maven 支援及其他重要的 Java 開發功能。
瀏覽 Maven 專案
一旦載入 Maven 專案,該擴充功能就會被啟用,並自動掃描工作區中的 pom.xml 檔案,並在側邊欄中顯示所有 Maven 專案及其模組。

解決未知類型
Maven 擴充功能也支援搜尋 Maven Central 以解決原始程式碼中的未知類型。您可以透過選取滑鼠懸停時顯示的 Resolve unknown type (解決未知類型) 連結來執行此操作。
使用 POM.xml
該擴充功能提供程式碼片段與自動完成功能,可用於根據本機 Maven 儲存庫新增 Maven 相依性。請看看利用這些便利的功能將新相依性新增至您的 pom.xml 有多麼簡單。
該擴充功能也能讓您產生 effective POM。
您也可以使用 Maven: Add a Dependency (新增相依性) 命令 (或 maven.project.addDependency) 來協助將新相依性新增至 pom.xml。此過程為互動式的。
您也可以透過專案檢視來新增相依性,這會呼叫相同的 Maven 命令。
此外,VS Code 還支援以樹狀結構檢視相依性,讓您可以在單一位置檢查專案中的所有相依性,並排查潛在問題。
執行 Maven 命令與目標
透過在總管 (Explorer) 中右鍵點選每個 Maven 專案,您可以方便地執行 Maven 目標。
該擴充功能還會保留每個專案的目標執行記錄,因此您可以快速重新執行先前的命令;當您在執行長型的自訂目標時,這非常實用。
有兩種方式可以重新執行目標
- 在命令選擇區 (Command Palette) 中,執行 Maven: History (記錄),然後從其記錄中選擇一個專案和一個命令。
- 右鍵點選一個專案並選擇 History (記錄)。然後,您可以從記錄中選擇一個先前的命令。
您也可以在設定中指定您偏好的命令,以供日後執行。
對於您在專案中使用的每個插件,該擴充功能也提供了一個簡單的方法來存取各插件內的目標。
若要偵錯 Maven 目標,請在目標上按右鍵並開始偵錯。Maven 擴充功能將會使用正確的參數呼叫 Java 偵錯工具。這是一個實用且節省時間的功能。
從 Maven Archetype 產生專案
此擴充功能提供的另一個實用功能是從 Archetype (原型) 產生 Maven 專案。該擴充功能會載入本機/遠端目錄中列出的原型。選擇後,擴充功能會將 mvn archetype:generate -D... 發送到終端機。
有幾種方法可以建立 Maven 專案
-
從 Maven 總管中,選擇 + Create Maven Project (建立 Maven 專案) 按鈕。

-
開啟 Command Palette (命令選擇區) (⇧⌘P (Windows, Linux Ctrl+Shift+P)),搜尋 Create Java Project (建立 Java 專案) 命令。
-
在目標資料夾上按右鍵並選擇 Create Maven Project (建立 Maven 專案)。
Gradle
VS Code 透過 Gradle for Java 擴充功能支援 Gradle Java 專案 (不含 Android)。此擴充功能提供了多個元件來增強您的 Gradle Java 專案體驗:
- Gradle Build Server:Gradle Build Server 用於匯入 Gradle 專案並將建置任務委派給 Gradle 背景程式 (daemon),確保專案輸出一致,如同從命令列執行 Gradle 任務一樣。
- 視覺化介面:允許您檢視與管理 Gradle 任務和專案相依性,並直接在 VS Code 內執行 Gradle 任務。
- Gradle Language Server:為 Gradle 建置檔案提供改進的撰寫體驗,包括語法醒目提示、錯誤報告和自動完成。
Gradle Build Server
預設情況下,如果您已安裝 Gradle for Java 擴充功能,將會使用 Gradle Build Server 來匯入 Gradle 專案。您可以透過設定 java.gradle.buildServer.enabled 來開啟或關閉 Gradle Build Server。
您可以在「Build Server for Gradle (Build)」輸出頻道檢視 Gradle 建置輸出,並在「Build Server for Gradle (Log)」輸出頻道追蹤 VS Code 與 Gradle Build Server 之間的互動。
將測試委派給 Gradle
該擴充功能支援將測試執行委派給 Gradle。您可以在「測試總管」(Testing Explorer) 中設定您想要使用的測試設定檔。
注意:請確保您已安裝 Test Runner for Java 擴充功能才能使用此功能。
使用 Gradle 任務
當您在 VS Code 中開啟 Gradle 專案時,可以點選 Gradle 側邊欄項目找到一些實用的 Gradle 檢視。「Gradle Projects (Gradle 專案)」檢視會列出工作區中找到的所有 Gradle 專案。您可以在此處檢視、執行或偵錯 Gradle 任務。
當工作區中有許多 Gradle 任務時,可能很難找到特定的任務。該擴充功能提供了「Pinned Tasks (固定任務)」檢視,協助您固定常用的任務,以便在獨立的檢視中輕鬆找到它們。您也可以在「Recent Tasks (最近任務)」檢視中查看最近執行的任務。
檢視 Gradle 相依性
在「Gradle Projects (Gradle 專案)」檢視中,您可以在每個 Gradle 專案項目下找到「Dependencies (相依性)」項目。它包含了您指定組態中的所有相依性,您可以輕鬆檢查專案的相依性狀態。

管理 Gradle 背景程式 (Daemons)
「Gradle Daemons (Gradle 背景程式)」檢視顯示目前工作區的背景程式狀態。它會列出與工作區版本相同的所有執行中 Gradle 背景程式。您可以選擇在此檢視中停止特定的一個或所有背景程式。
撰寫建置檔案
該擴充功能針對 Gradle 建置檔案提供了一些實用的撰寫功能。
當開啟 Groovy Gradle 檔案時,該擴充功能會分析 Gradle 檔案並提供語意標記資訊,從而提供更精確的醒目提示結果。

在「Outline (大綱)」檢視中,擴充功能提供了所開啟 Gradle 檔案的文件符號,這可以協助您輕鬆導覽至檔案的任何部分。

如果所開啟的 Gradle 檔案中有任何語法錯誤 (缺少字元、找不到類型等),您可以在「Problems (問題)」檢視中找到它們。

該擴充功能支援 Gradle 檔案的基本自動完成功能。當您嘗試在 Gradle 指令碼中輸入 Gradle 閉包 (closures) 或屬性時,擴充功能會為您建議可用的閉包或屬性。
當您嘗試宣告新的相依性時,擴充功能會為您提供相依性候選清單。
其他資源
請造訪 Maven 擴充功能的 GitHub 儲存庫以取得額外的 組態設定與 疑難排解指南。
除了 Maven 之外,如果您使用 Bazel 建置與測試專案,還有一個 Bazel 擴充功能。
後續步驟
繼續閱讀以了解更多關於: