Java 格式化與代碼檢查 (Linting)
Language Support for Java™ by Red Hat 也提供了格式化設定。您可以匯出 Eclipse 格式化設定檔,並在 VS Code 中將其用於您的專案。
此外,還有 Checkstyle for Java 和 SonarLint 擴充功能,它們提供了即時代碼檢查 (Live linting) 與代碼分析功能。
格式化工具 (Formatter)
您可以使用 Format Document (格式化文件) 指令來格式化 Java 檔案。如果您先前未指定格式化設定檔,Java 檔案將會使用預設設定進行格式化。
套用格式化設定
您可以輕鬆地從現有的 Eclipse 格式化設定檔中套用格式化設定。例如,如果您想為您的 Java 專案套用 Google 風格,您可以在 settings.json 中設定以下屬性:
"java.format.settings.url": "https://raw.githubusercontent.com/google/styleguide/gh-pages/eclipse-java-google-style.xml",
此屬性可設定為 URL 或本機檔案路徑。如果格式化程式的 XML 檔案包含多個設定檔,您可以指定設定檔名稱。
"java.format.settings.profile": "GoogleStyle",
設定好格式化設定檔後,Format Document (格式化文件) 指令將會使用該特定設定檔來格式化您的 Java 檔案。
編輯格式化設定
Extension Pack for Java 提供了一個編輯器,協助使用者編輯現有的格式化設定檔。您可以使用 Java: Open Java Formatter Settings with Preview (開啟 Java 格式化設定並預覽) 指令開啟此編輯器。在編輯器中,您可以變更格式化設定並預覽效果。儲存目前編輯器後,變更將會儲存至該格式化設定檔中。
注意:格式化設定編輯器僅支援本機格式化設定檔。如果您的工作區包含遠端格式化設定檔,它會引導您將其下載到
.vscode資料夾中。
在編輯器中修改設定時,您可以在右側的 Preview (預覽) 面板中預覽變更的效果。
您也可以撤銷 (Undo) 和重做 (Redo) 變更。
SonarLint
SonarLint 是一款易於使用的擴充功能,可協助您在編碼時發現並修復錯誤與安全性問題。此擴充功能會在背景執行,就像拼字檢查器一樣,標示出存在品質或安全性疑慮的原始碼問題。它不僅會告訴您問題是什麼,還會提供情境化指導,說明為什麼它有害以及如何修復它,並附帶範例。該擴充功能支援超過 500 種 Java 規則,並包含多項 快速修復 (Quick Fixes),可自動修復某些品質問題。
即時代碼分析
問題會直接在編輯器中標示,並透過游標懸停提示提供詳細說明。
在已開啟檔案中發現的問題也可以透過 VS Code 的 Problems (問題) 面板進行檢視。在適用的情況下,會提及次要代碼位置,讓您了解問題的起因(例如,導致錯誤的代碼路徑)。
規則說明文件與修復建議
對於偵測到的任何問題,SonarLint 會提供有關違規規則的完整說明文件,以及與其相關的最佳編碼實踐。這讓您可以了解為什麼會產生該問題,以及如何修復它。
啟用更多品質與安全性規則
SonarLint 預設提供了一系列廣泛的規則來偵測錯誤和弱點。您可以透過 SonarLint Rules (SonarLint 規則) 檢視來啟用更多檢查。
有關 SonarLint for VS Code 擴充功能的更多詳細資訊,請造訪 SonarLint 網站。
Checkstyle
透過 Checkstyle for Java 擴充功能,您可以為專案使用現有的 checkstyle 設定(如 Google 或 Sun 的檢查規則)或您自己的自訂檔案。在編輯 Java 檔案時,該擴充功能會檢查檔案格式,並在可能的情況下即時提供快速修復。
使用 Checkstyle: Set the Checkstyle Configuration File (設定 Checkstyle 設定檔) 指令,並從下拉式選單中選擇 Checkstyle 檔案來設定 Checkstyle 設定檔。
Checkstyle for Java 擴充功能支援即時檢查。
以及批次檢查。
當您點選狀態列中的 Checkstyle 狀態圖示時,Problems (問題) 面板將會開啟。
設定 Checkstyle 設定檔
若要設定設定檔,請右鍵點選 .xml 檔案並選擇 Set the Checkstyle Configuration File (設定 Checkstyle 設定檔)。

您也可以觸發 Checkstyle: Set Checkstyle Configuration File (設定 Checkstyle 設定檔) 指令,在檔案總管中選擇設定檔。該擴充功能會在您的工作區中尋找 checkstyle.xml 檔案,讓 Checkstyle 設定更加容易。您還會看到以下兩種內建設定:
- Google 的檢查 (Google's Check)
- Sun 的檢查 (Sun's Check)
Checkstyle: Set the Checkstyle Configuration (設定 Checkstyle 設定) 指令會偵測潛在的 Checkstyle 設定檔並將其列出。您也可以透過直接在輸入框中輸入 URL 來提供設定檔。
您也可以使用 Checkstyle: Set the Checkstyle Version (設定 Checkstyle 版本) 指令來設定 Checkstyle 版本。
該指令將會:
- 列出主儲存庫中最新的 Checkstyle 版本。
- 列出所有已下載的版本。
- 列出所有支援的版本。
- 以勾選符號標記目前使用的版本。
此外,您還可以透過設定路徑來引入任何 Checkstyle 的第三方模組。例如,在使用下列設定後,您可以將 <module name="SingleBreakOrContinueCheck"/> 或 <module name="com.github.sevntu.checkstyle.checks.naming.SingleBreakOrContinueCheck"/> 加入到 checkstyle.xml 中來使用這些檢查。
"java.checkstyle.modules": [ "${workspaceFolder}/src/main/resources/sevntu-checks-1.35.0.jar" ]
檢查樣式並修正違規
在編輯 Java 檔案時,擴充功能會檢查檔案格式,並在可能的情況下提供快速修復。您可以點選編輯器中的燈泡按鈕來顯示可用的快速修復選項。

有關 Checkstyle for Java 的更多詳細資訊,請造訪其 GitHub 儲存庫。