現已釋出!閱讀關於 11 月新增功能和修復的內容。

在 VS Code 中管理 Java 專案

Java 專案管理器擴充套件可幫助您管理 Java 專案及其依賴項。它還有助於您建立新的 Java 專案、包和類。要獲得 Visual Studio Code 中完整的 Java 語言支援,您可以安裝 Java 擴充套件包,其中包含 Java 專案管理器擴充套件。

安裝 Extension Pack for Java

有關如何開始使用擴充套件包的詳細資訊,您可以查閱 Java 入門教程。

專案檢視

Java 專案檢視可幫助您檢視 Java 專案及其依賴項,並提供專案管理任務的入口點。

project view

預設情況下,Java 專案檢視顯示在資源管理器檢視下方。如果看不到它,請嘗試在資源管理器標題欄中單擊 ... 按鈕,然後選擇Java 專案

在導航欄的溢位按鈕中,還有更多選項可供使用。例如,您可以在分層檢視和平面檢視之間切換。

overflow button

您可以在資源管理器中節點旁邊找到按鈕,這些按鈕提供了某些操作的便捷快捷方式。

inline button

每個節點右鍵選單中還有許多有用的功能,您可以在資源管理器中右鍵單擊節點以將其調出。

context menu

建立新的 Java 專案

您可以透過單擊導航欄中的 + 按鈕,或者透過命令面板(Command Palette)中的命令Java: Create Java Project... (⇧⌘P (Windows, Linux Ctrl+Shift+P)) 來建立新的 Java 專案。在建立過程中,如果您的專案型別需要但尚未安裝所需的擴充套件,VS Code 將幫助您安裝它們。

create project

匯入 Java 專案

您可以透過檔案 > 開啟資料夾…直接將現有 Java 專案和模組匯入到您的工作區(確保開啟的資料夾包含您的構建工具指令碼,例如 pom.xmlbuild.gradle)。VS Code for Java 將自動檢測並匯入您的專案。

當您向專案中新增新模組時,可以觸發Java: Import Java projects in workspace命令將其匯入到您的工作區。此命令有助於在不重新載入 VS Code 視窗的情況下將新專案匯入工作區。

匯出到 JAR

您可以從專案檢視中匯出構建到 JAR,或透過執行命令Java: Export Jar...來匯出。

Export jar from the project view

配置專案執行時

隨著 Java 的發展,開發人員使用多個 JDK 版本是很常見的。您可以透過設定 java.configuration.runtimes 將它們對映到本地安裝路徑。該設定具有以下格式

"java.configuration.runtimes": [
  {
    "name": "JavaSE-1.8",
    "path": "/usr/local/jdk1.8.0_201"
  },
  {
    "name": "JavaSE-11",
    "path": "/usr/local/jdk-11.0.3",
    "sources" : "/usr/local/jdk-11.0.3/lib/src.zip",
    "javadoc" : "https://docs.oracle.com/en/java/javase/11/docs/api",
    "default":  true
   },
   {
    "name": "JavaSE-12",
    "path": "/usr/local/jdk-12.0.2"
   },
   {
    "name": "JavaSE-13",
    "path": "/usr/local/jdk-13"
   }
]

注意:您可以透過為條目新增 "default": true 來將其中一個設定為預設值。預設 JDK 將用於您的非託管資料夾(沒有構建工具)。

要檢視您的專案正在使用哪個 JDK,您可以在命令面板(Command Palette)中觸發命令Java: Configure Java Runtime⇧⌘P (Windows, Linux Ctrl+Shift+P))。此命令會開啟一個檢視,顯示您專案的執行時資訊。

Project runtime

更改 Maven 和 Gradle 專案的 JDK

如果您想更改 Maven 或 Gradle 專案的 JDK 版本,您需要在構建指令碼(pom.xmlbuild.gradle)中進行更新。您可以單擊 檢視如何進行此類更改。單擊 將導航到專案的構建指令碼檔案。

更改非託管資料夾的 JDK

要更改非託管資料夾(沒有構建工具)的 JDK,您可以單擊 按鈕。它將列出所有 JDK,您可以為您的非託管資料夾選擇一個。

下載 JDK

如果您想下載新的 JDK,可以單擊 download 連結,或在命令面板(Command Palette)中觸發命令Java: Install New JDK⇧⌘P (Windows, Linux Ctrl+Shift+P))。它將開啟一個新檢視,指導您下載 JDK。

Download-jdk

注意:要啟用 Java 預覽功能,請參閱 如何使用 VS Code 配合新的 Java 版本

配置非託管資料夾的類路徑

Java 專案管理器擴充套件提供了一個使用者介面來配置非託管資料夾的類路徑。可以在類路徑配置頁面上手動設定類路徑。您可以透過從命令面板(Command Palette)執行 **Java: Configure Classpath** 命令來開啟它(⇧⌘P (Windows, Linux Ctrl+Shift+P))。

configure classpath

在極少數情況下,您可能需要透過從命令面板(Command Palette)執行 **Java: Clean Java Language Server Workspace** 命令(⇧⌘P (Windows, Linux Ctrl+Shift+P))來清理 Java 工作區,以便語言伺服器重建您的依賴項。

依賴管理

新增 Maven 依賴項

對於 Maven 專案,您可以透過單擊專案檢視中Maven Dependencies節點旁邊的 + 圖示來新增依賴項。

add maven dependency

管理非託管資料夾的依賴項

如果您的專案是一個沒有構建工具的非託管資料夾。您可以透過單擊Referenced Libraries節點或其下的專案旁邊的 + 圖示或 - 圖示來管理依賴項,或者您也可以直接將 jar 庫拖到 Referenced Libraries 節點上。

manage referenced libraries

您也可以在類路徑配置頁面中管理依賴項。參見:配置非託管資料夾的類路徑

在後臺,settings.json 中有一個名為 java.project.referencedLibraries 的設定。下面是有關如何自定義此設定的詳細資訊。

包含庫

要引用的庫使用一組 glob 模式進行描述。

例如

"java.project.referencedLibraries": [
    "library/**/*.jar",
    "/home/username/lib/foo.jar"
]

上述設定將工作區庫資料夾中的所有 .jar 檔案以及指定絕對路徑中的 foo.jar 新增到專案的外部依賴項中。

然後 VS Code 會監視引用的庫,並且在這些依賴檔案發生更改時,專案將得到重新整理。

預設情況下,VS Code 會使用 glob 模式 lib/**/*.jar 引用工作區 lib 目錄中的所有 JAR 檔案。

排除一些庫

如果您想從專案中排除一些庫,可以展開 java.project.referencedLibraries 來使用 include/exclude 欄位,並新增一個 exclude glob 模式。

"java.project.referencedLibraries": {
    "include": [
        "library/**/*.jar",
        "/home/username/lib/foo.jar"
    ],
    "exclude": [
        "library/sources/**"
    ]
}

在上面的示例中,library/sources 資料夾中的任何二進位制 JAR 檔案都將被忽略,因為它們不是專案的外部依賴項。

附加源 JAR

預設情況下,引用的 {binary}.jar 會嘗試在同一目錄下查詢 {binary}-sources.jar,如果找到匹配項,則將其附加為源。

如果您想手動指定一個 JAR 檔案作為源附件,可以在 sources 欄位中提供一個鍵值對對映。

"java.project.referencedLibraries": {
    "include": [
        "library/**/*.jar",
        "/home/username/lib/foo.jar"
    ],
    "exclude": [
        "library/sources/**"
    ],
    "sources": {
        "library/bar.jar": "library/sources/bar-src.jar"
    }
}

這樣,bar-src.jar 就被附加到 bar.jar 作為其源。

輕量級模式

VS Code for Java 支援兩種模式:輕量級模式和標準模式。在輕量級模式下,只有原始檔和 JDK 由語言伺服器解析;在標準模式下,匯入的依賴項由語言伺服器解析並構建專案。當您需要快速啟動和輕量級環境來處理原始檔時,輕量級模式效果最佳,例如,讀取原始碼、在原始碼和 JDK 之間導航、檢視大綱和 Javadoc、檢測和修復語法錯誤。此外,還支援在原始檔和 JDK 的範圍內進行程式碼補全。

輕量級模式不會解析匯入的依賴項,也不會構建專案,因此不支援執行、除錯、重構、程式碼審查或檢測語義錯誤。要使這些功能可用,您需要將工作區從輕量級模式切換到標準模式。

您可以透過使用以下選項配置 java.server.launchMode 來控制啟動模式。

  • Hybrid(預設)- 首先,工作區以輕量級模式開啟。如果您的工作區包含未解析的 Java 專案,系統會詢問您是否切換到標準模式。如果您選擇稍後,它將繼續以輕量級模式執行。您可以單擊狀態列上的語言狀態項手動切換到標準模式。
  • Standard - 工作區以標準模式開啟。
  • LightWeight - 工作區以輕量級模式開啟。您可以單擊狀態列上的語言狀態項手動切換到標準模式。

語言狀態項使用不同的圖示指示當前工作區處於哪種模式。

  • - 工作區以輕量級模式開啟。
  • - 工作區正在以標準模式開啟。
  • - 工作區以標準模式開啟。

單擊語言狀態項即可切換到標準模式。

Switch to Standard

構建狀態

當您在 Visual Studio Code 中編輯 Java 原始碼時,Java 語言伺服器會構建您的工作區,為您提供必要的語言功能。您可以透過單擊狀態列中的語言狀態項來檢視詳細的構建任務狀態並觀察後臺發生的情況。當通知顯示語言伺服器正在開啟 Java 專案時,您也可以選擇檢查詳細資訊連結來檢視構建任務狀態。

其他資源

有幾個 Visual Studio Code 擴充套件支援不同的 Java 構建系統。以下是一些流行構建系統的擴充套件。

如果您在使用上述功能時遇到任何問題,可以透過提交 issue 與我們聯絡。

後續步驟

繼續閱讀以瞭解更多關於

  • Java 編輯 - 探索 VS Code 中的 Java 編輯功能。
  • Java 除錯 - 瞭解如何在 VS Code 中除錯您的 Java 專案。
  • Java 測試 - 將 VS Code 用於您的 JUnit 和 TestNG 用例。
  • Java 擴充套件 - 瞭解更多適用於 VS Code 的有用 Java 擴充套件。
© . This site is unofficial and not affiliated with Microsoft.