VS Code Java 3 月更新!支援 IntelliJ 風格的程式碼補全
作者:Nick Zhu
大家好,歡迎來到 Visual Studio Code Java 的 3 月更新。這次我們將為您帶來一些關於我們程式碼補全的優化、Maven 改進以及我們最新的 Java 外掛預覽版本的最新更新。讓我們開始吧!
更多生成程式碼片段的快捷方式
由於我們對 Java 的語言支援是通過 Eclipse ™ JDT Language Server 提供的,所以生成某些程式碼片段(例如System.out.println() )的快捷方式大多基於 Eclipse 風格。例如,System.out.println()的快捷方式是sysout 。但是,我們從很多使用者那裡聽說他們習慣了其它 IDE(例如 IntelliJ IDEA)的快捷方式,並且希望看到 VS Code 也支援這些 IDE 的快捷方式。因此,我們也在外掛中添加了這些常用程式碼片段的快捷方式。以下是我們支援的快捷方式的列表
程式碼片段 | Eclipse風格快捷方式 | IDEA風格快捷方式 |
System.out.println() | sysout | sout |
System.err.println() | syserr | serr |
當前函式簽名的System.out.println() | systrace | soutm |
public static void main(String[] args) {} | main | psvm / main |
Iterator (for 迴圈) | foreach | iter |
以下是展示這些新快捷方式的演示
建構函式的程式碼補全優化
關於程式碼補全,目前使用者反饋最多的問題之一是在 VS Code 中編寫建構函式時,使用者一般希望補全的提示可以和定義的型別直接相關(例如, List<String> list = …,提示“…”部分的時候應該建議ArrayList等列表型別),但是,在當前的外掛中通常不是這種情況。
在過去的幾次迭代中,我們已經調查了這個問題並進行了更改以改善這種體驗。通過這些新的改進,程式碼補全將更加了解使用者正在建立的型別,併為建構函式建議最相關的型別。例如, 定義List<String>將導致對 new ArrayList<String>補全的建議。類似地,一個String[]將導致一個數組型別的建議來完成建構函式。以下是一個對該優化的演示:
我們仍在對上述功能進行一些調整,並將在接下來的幾個版本中釋出。
今年早些時候,我們釋出了 2022 年路線圖 ,更好的程式碼補全體驗是我們的重點之一。我們希望繼續改進這一領域,所以如果您希望看到有關程式碼補全質量和效能的任何其它反饋,請告訴我們(提供反饋的渠道在最下方)。
Maven 改進
除了程式碼完成的新功能外,我們還對 Maven 外掛進行了一些改進。
- 顯示 Maven POM 檔案路徑
在之前的外掛中,當用戶開啟多個同名專案時,很難區分專案屬於哪個POM檔案。此外,顯示 POM 檔案的確切路徑有助於為使用者提供更多資訊。因此,我們加入了一個小的改進:當用戶將滑鼠懸停在 Maven 外掛檢視中的主節點上時,會顯示一個提示來顯示完整的 Maven POM 檔案路徑。這是此改進的螢幕截圖:
- POM 版本中的程式碼補全現在可以正確替換版本
當自動補全一個 Maven 依賴的版本時,以前我們的外掛會將結果新增到現有文字中而不是替換它,從而導致我們的使用者體驗出現問題。我們在最近的版本中修復了這個問題,現在自動補全將正確替換版本,類似的改進也適用於artifactId和groupId 。以下是一段演示:
新的Java外掛預覽版本機制
自 1.63 版以來 ,Visual Studio Code 已支援外掛的預覽版本機制,因此使用者對於一款外掛,可以選擇安裝”預覽版本(Pre-Release Version)”或者是“釋出版本(Release Version)”。目前,我們已經為 Gradle for Java 和 Maven for Java 外掛啟用了預釋出通道,並將在本月底對於 Java外掛包 中其它的外掛啟用預覽機制。對於總是喜歡獲取最新功能的使用者,可以選擇安裝預覽版本並給我們第一手的反饋。對於偏向穩定的使用者,可以像以前一樣繼續使用“釋出版 (Release version)”(預設)
您可以使用 Visual Studio Code 中“安裝”按鈕旁邊的附加按鈕輕鬆地在預覽版本(Pre-Release Version)和釋出版本(Release Version)之間切換(如下圖所示)
反饋與建議
2022 年,Visual Studio Code 上的 Java 會有很多激動人心的更新,一如既往,您的反饋和建議對我們非常重要,將有助於我們未來的產品塑造。有幾種方法可以給我們留下反饋
- 填寫中文問卷
- 在這個帖子下留言
- 在我們的GitHub repo上 建立Issue
- 傳送電子郵件到 [email protected]
資源
以下連結和資源能幫助您更好地瞭解Java on Visual Studio Code的相關資訊
- 瞭解 更多 Visual Studio Code上Java 的更多資訊
- 逐步探索 有關Visual Studio Code的Java教程
- VS Code Java 6 月更新!Spring 重大功能提升!
- VS Code Java 4 月更新!帶來 Java 18 支援
- VS Code Java 3 月更新!支援 IntelliJ 風格的程式碼補全
- VS Code Java 2 月更新!教育特別版:單元測試、GUI開發支援、Gradle專案建立、以及更多!
- 微軟釋出 2022年 VS Code Java 產品路線圖!
- AI領域外掛神器!OpenVINO™ Snippets for VS Code
- VS Code Java 11 月更新!看看如何解決亂碼問題?
- 除了摸魚聊天,VS Code 甚至能寫程式碼!
- 和 .project 檔案說“再見”—— VS Code Java 1.1.0 背後的故事
- VS Code Java 10 月更新!效能顯著提升!
- Code Runner,率先支援宇宙第一IDE 最新 2022 版!
- 我寫的 Code Runner,下載量突破 3000 萬了!
- VS Code 有超過 100 萬 Java 使用者!微軟還帶來全新 Gradle for Java 外掛,更方便的程式碼操作
- 重磅!微軟釋出 vscode.dev,把 VS Code 帶入瀏覽器!
- 955.WLB 的 VS Code 外掛來了!在 VS Code 中檢視 955 公司名單,以及貼心的下班提醒功能
- VS Code Java 7 月更新!全新的測試體驗!
- Visual Studio Code 測試 API 功能概覽
- 官宣|VS Code 1.59 釋出!Terminal 可以跨視窗移動了!
- VS Code Java 5 月更新!從原始檔自動生成測試!
- 重磅!微軟釋出新一代 Teams 開發工具 —— Teams Toolkit!不止VS Code extension!