VS Code(Visual Studio Code)已成為多語言開發人員的首選文本編輯器。 大量 Javascript、TypeScript、Go、Python 和其它語言的開發人員都在使用 VS Code 進行編碼,這部分歸功于 VS Code 擴展形成的龐大生態系統。這些擴展增強和豐富了 VS Code 的體驗,使其成為類 IDE 的超級智能文本編輯器,同時它又極其快速和輕量級。
VS Code 支持 了 Java 開發,許多 Java 擁護者和演講者都使用它上臺演講做現場演示。
以下是 2019 年 Java 開發人員使用 VS Code 開發、運行、調試和部署其應用程序的終極指南。
如果您尚未下載 VS Code,那現在就下載并安裝它吧。接下來本指南將假定您至少安裝了 Java 8,盡管 VS Code 也支持 Java 11。您也可以完全跳過本指南,直接參考文檔《 用 VS Code 開發 Java 應用》。但是,建議對照下面的指南走查一遍重點部分,這將有助于您更好地利用 VS Code 進行 Java 開發。
初始設置
為了使 VS Code 支持核心 Java,作為最低要求,您必須安裝一組擴展。 讓我們逐一深入研究這些擴展。
微軟的 Java 擴展包(Java Extension Pack)
這個擴展包包含了下文將要詳細介紹的五個擴展。借助它,你無需過多了解就可以開始使用 VS Code。
紅帽的 Java 語言支持擴展(Language Support for Java)
要使 VS Code 支持 Java,這是唯一一個必須安裝的擴展。其它擴展都是補充性的,您需要根據要開發的項目決定是否要安裝它們。
安裝完這個擴展后,您就可以閱讀和編輯 Java 源代碼了。首先創建一個 Helloworld.java 文件,然后用 VS Code 打開 (或者在 VS Code 中創建該文件,然后把它保存在某個文件夾中)。
完成后,您可以打開終端(在 Mac OS 中,使用組合鍵 ?+`),然后輸入命令 javac HelloWorld.java 進行編譯。
VS Code 里內嵌的終端
編譯后會產生一個 Helloworld.class 文件。最后,用 Java 命令運行這個類:java helloworld。
Java 語言支持擴展通過使用 Eclipse 語言服務器協議(Eclipse Language Server Protocol)支持 Java。了解有關 Eclipse LSP 的更多信息。
其它特性
Java 語言支持擴展添加了許多其它功能,可以幫助您快速瀏覽、編寫、重構和閱讀 Java 源代碼,您不妨使用 VS Code 這個輕量級文本編輯器來替代其它 IDE。
面包屑導航 (頂部) — 大綱視圖 (左下角)
查看概述頁面可以獲取這個擴展的特性以及重構快捷鍵的完整列表。
微軟的 Java 調試器(Debugger for Java)
掌握了在 VS Code 中編寫和閱讀 Java 代碼的基礎知識后,下一步自然就是運行和調試代碼了。 這正是該擴展提供的功能。 這個擴展使用您計算機上的默認 JAVA_HOME,當然您也可以自定義它。
運行 | 調試 Java 應用
它具備常見的 Java IDE 調試特性的所有能力,并且支持更多的自定義,可以讓您控制代碼如何被執行以及調試器如何連接到 JVM。 它還支持遠程 JVM。
安裝這個擴展后,您會在主方法上方看到兩個超鏈接,如上圖所示。若您單擊運行,代碼將被編譯并執行。您還可以設置斷點并點擊調試。
對于遠程調試,您需要添加新的配置。 切換到調試視圖(在 Mac 上按 Shift +?+ D)并點擊配置按鈕?。 這樣會打開 launch.json 文件。 單擊屏幕上的添加配置藍色按鈕。 這會打開一個如上圖所示的彈出菜單。
現在,您可以自定義一個能插入遠程 JVM 的 啟動項了。您只需提供主機名、端口號等詳細信息。
和其它調試 IDE 一樣,您可以在運行期間查看變量、堆棧追蹤,甚至對變量內容進行更改。
VS Code 里在調試過程中更改 Java 變量
至此,我們完成了用于閱讀、編寫、運行和調試 Java 代碼的 VS Code 基本設置。
中級設置
掌握了 Java 編碼的基礎知識后,您很快就需要使用庫、依賴項、類路徑等。在 VS Code 上進一步改進 Java 支持的最佳方法是添加以下三個擴展:
1.Java 依賴查看器(Java Dependency Viewer)
2. 針對 Java 的 Maven 擴展 (Maven for Java)
3. 微軟的 Java 測試運行器(Java Test Runner)
讓我們分別看一下這幾個擴展。
微軟的 Java 依賴查看器
這個擴展為您提供兩個核心功能。 其中主要的一個功能是提供了“項目”的概念,您可以手動向項目中添加庫(JAR)。 第二個功能使項目當前設置的 classpath 可視化,即使是 Maven 項目(參見下文針對 Java 的 Maven 擴展)。
打開命令托盤(Shift +?+ P)并輸入 create java:
創建一個 Java 工程
您需要選擇創建項目的位置。項目由與項目名稱同名的文件夾組成(您選擇了創建項目的位置后,接下來命令托盤會繼續詢問項目名稱,例如你可以輸入 myworkspace)。
創建項目后,VS Code 將在新窗口中打開這個新文件夾。
新的 Java 工程
就像您看到的那樣,這個項目具有一個基本結構,其中包含了 bin 和 src 文件夾。 在 src 中,開始會有一個基本的 Java 類。 如果您是一位經驗豐富的 Java 開發人員,一眼就會發現這個擴展使用的是 Eclipse 項目的格式,這是因為它與 Eclipse 語言服務器協議和其它擴展能很好的協同工作。
添加類庫和 JAR 包
您可以編輯 .classpath 文件,指定全部自定義 JAR 包所在的目錄,這個目錄可以放在任何位置,例如某個 lib 文件夾。這些擴展會自動加載 classpath 中包含的類庫,使你能夠運行自己的代碼。
編輯.classpath 文件增加類庫
微軟的針對 Java 的 Maven 擴展
Maven 是 Java 生態系統中使用最廣泛的項目構建和依賴關系管理工具。因此,通過該擴展,您幾乎可以用 VS Code 處理任何類型的 Java 項目。
您將能夠通過 Maven 原型(archetype)生成和引導 Maven 項目、管理依賴關系并觸發 Maven 目標(goal),并借助一些智能代碼補全功能編輯 pom. xml 文件。
Maven 命令
讓我們來看一下:
這個擴展會要求您選擇目標文件夾,以便在其下面生成項目文件夾。 輸入焦點會跳轉到終端,您必須在那里輸入 Maven 命令行的參數,不過不用擔心,它會一步一步地引導您。
創建項目后,直接從終端調用 code 即可打開它。
在 VS Code 中打開新創建的目錄
好了,您現在應該已經在 VS Code 中打開您的 Maven 項目了。您可以做的最基本的事情就是運行您的代碼。 您有兩個選擇:
1. 如前所述,使用 App 類中 main 方法旁邊的 Run 超鏈接運行您的代碼。
2. 使用 Maven。
如果您使用 Java 調試擴展(運行 | 調試)觸發器,擴展將使用 Maven 生成的 classpath,以確保所有依賴項都正確地添加到類路徑中。
如果使用 Maven 運行 Java 代碼,您可以像往常一樣使用終端,或者打開命令托盤并輸入 Maven Execute Commands。
顯示 Maven 動作的命令托盤
它會要求您選擇一個項目。 由于您只有一個項目,直接在其上按回車即可。 接下來,您將看到一個列表,它包含了所有默認的核心 Maven 目標。 選擇 package 生成 JAR 文件。
如果要運行自定義目標,例如從 Maven 插件繼承的目標,您可以使用 Maven 視圖:
執行來自 Maven 插件的目標
編輯 pom.xml 文件并添加依賴項后,VS Code 將自動重新加載 classpath,然后您就可以從新的依賴項中導入類和包。 這個過程非常干凈、順暢。
Microsoft 的 Java 測試執行器
最后一步是增強單元測試的運行、調試和測試結果的可視化。此擴展程序將超鏈接添加到可以單獨執行的單元測試 (支持 JUnit 和 TestNG),您可以立即在 VS Code 中看到報告,如下面的示例所示。
在 VS Code 中運行單元測試
此擴展還將啟用測試資源管理器視圖,因此您可以專注于代碼的單元測試,并以更加符合測試驅動開發(TDD)的方式編寫軟件。
測試瀏覽器
此擴展目前僅適用于 Maven 項目,因此請確保您安裝了針對 Java 的 Maven 擴展。
高級設置
如果您現在對使用 VS Code 進行 Java 開發感到滿意,那么是時候進一步改善您的使用體驗了。 以下是一些擴展列表,可以改善您的日常工作體驗。
這只是接下來要添加哪些擴展的建議,而不是事實標準的列表,但它可以讓您先行一步。
GitLens
希望您已經在使用 Git 了,無論是通過 GitHub 還是其它任何服務或環境。此擴展為您提供有關源代碼著作信息的洞察,例如 “誰添加了此方法以及何時添加”。
上圖就是安裝了 GitLens 后 Java 類的樣子。看看那些沒有數字的行,它們是對提交歷史的注釋。 您也可以簡單地將鼠標懸停在特定的行上,它將顯示這一行是何時、由誰、在哪個提交哈希上添加的。
Rest 客戶端
如果您是構建 REST API 的開發人員,那么這是您必須安裝的 VS Code 的擴展。 有了它,您將能夠編輯包含 HTTP 調用的 .http 文件。 編輯器將快速提供代碼片段和模板,它會為您提供一個即點生效的神奇的超鏈接,它會觸發 HTTP 調用并在旁邊打開結果。下圖是一個快速瀏覽。
就這樣了! 您現在擁有一份完整的 VS Code 設置,可以實際進行任何類型的 Java 開發了。
福利:Pivotal 的 Spring 設置和 Gradle
如果你是一個狂熱的 Spring 開發人員,一定想知道 Pivotal 和微軟提供的那些能增強 Spring Boot 應用開發體驗的重要擴展。
最后,有一個可以幫助您編寫 build.gradle 文件的 Gradle 擴展。
以下是一些額外的 Spring 工具供進一步學習:
Spring Boot Tools
Spring Initializr Java Support
Spring Boot Dashboard
Gradle Language Support
查看英文原文:https://dzone.com/articles/visual-studio-code-for-java-the-ultimate-guide-201
推薦閱讀:秀尚街