VS Code Java 3 月更新!支援 IntelliJ 風格的程式碼補全

語言: CN / TW / HK

作者: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 會有很多激動人心的更新,一如既往,您的反饋和建議對我們非常重要,將有助於我們未來的產品塑造。有幾種方法可以給我們留下反饋

資源

以下連結和資源能幫助您更好地瞭解Java on Visual Studio Code的相關資訊