尝试以扩展 VS Code 中的代理模式!

Java 格式化和代码检查

Language Support for Java™ by Red Hat 也提供了格式化设置。你可以导出一个 Eclipse 格式化文件,然后在 VS Code 中用于你的项目。

此外,还有 Checkstyle for JavaSonarLint 扩展,它们提供了实时代码检查和代码分析的功能。

格式化程序

你可以使用 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 打开编辑器。在编辑器中,你可以更改格式化设置并预览效果。保存当前编辑器后,更改将被保存到格式化配置文件中。

注意:格式化设置编辑器只支持本地格式化配置文件。如果你的工作区包含一个远程格式化配置文件,它会引导你将其下载到 .vscode 文件夹中。

在编辑器中编辑设置时,你可以在右侧的预览面板中预览更改的效果。

你还可以撤销和重做更改。

SonarLint

SonarLint 是一个简单易用的扩展,可以帮助你在编码时发现并修复 bug 和安全问题。该扩展在后台运行,就像拼写检查器一样,会高亮显示存在质量或安全问题的源代码。该扩展不仅告诉你问题是什么,还提供上下文指导,解释其危害性以及如何修复,并附带示例。该扩展支持超过 500 条 Java 规则,并包含多个快速修复,以自动修复某些质量问题。

实时代码分析

问题会直接在编辑器中高亮显示,悬停时会提供详细解释。

在打开的文件中发现的问题也可以通过 VS Code 的“问题”面板进行审查。在适用情况下,会提及第二代码位置,以便你了解问题源于何处(例如,导致 bug 的代码路径)。

规则文档和修复指南

对于检测到的任何问题,SonarLint 都会提供关于所违反规则的完整文档,以及它所涉及的最佳编码实践。这可以让你理解为什么会产生一个问题,以及如何修复它。

启用更多的质量和安全规则

默认情况下,SonarLint 提供了大量规则来检测 bug 和漏洞。可以通过 SonarLint 规则视图启用更多检查。

有关 SonarLint for VS Code 扩展的更多详情,请访问 SonarLint 网站

Checkstyle

通过 Checkstyle for Java 扩展,你可以使用现有的 checkstyle 配置(Google's 或 Sun's Check),或者为你的项目使用你自己的自定义文件。在编辑 Java 文件时,该扩展将检查文件格式,并在可能的情况下提供实时快速修复。

使用 Checkstyle: Set the Checkstyle Configuration File 命令设置 Checkstyle 配置文件,并从下拉列表中选择 Checkstyle 文件。

Checkstyle for Java 扩展支持实时代码检查。

以及批量检查。

当你点击状态栏中的 Checkstyle 状态图标时,“问题”面板将会打开。

设置 Checkstyle 配置文件

要设置配置文件,右键单击 .xml 文件并选择Set the Checkstyle Configuration File

Set Checkstyle configuration file

你还可以触发命令 Checkstyle: Set Checkstyle Configuration File 来在文件资源管理器中选择配置文件。该扩展会在你的工作区中查找 checkstyle.xml 文件,以使 Checkstyle 配置更加容易。你还会看到两个内置配置:

  • Google's Check
  • Sun's Check

命令 Checkstyle: Set the Checkstyle Configuration 会检测潜在的 Checkstyle 配置文件并列出它们。你也可以通过在输入框中直接写入 URL 来提供一个配置文件。

你还可以使用命令 Checkstyle: Set the Checkstyle Version 来设置 Checkstyle 版本。

该命令将:

  • 列出主仓库中最新的 Checkstyle 版本。
  • 列出所有已下载的版本。
  • 列出所有支持的版本。
  • 用一个勾号标记当前使用的版本。

此外,你还可以通过配置其路径来为 Checkstyle 引入任何第三方模块。例如,使用以下配置后,你可以在 checkstyle.xml 中添加 <module name="SingleBreakOrContinueCheck"/><module name="com.github.sevntu.checkstyle.checks.naming.SingleBreakOrContinueCheck"/> 来使用这些检查。

"java.checkstyle.modules": [ "${workspaceFolder}/src/main/resources/sevntu-checks-1.35.0.jar" ]

检查样式并修复违规问题

编辑 Java 文件时,扩展将检查文件格式,并在可能的情况下提供快速修复。你可以点击编辑器中的灯泡按钮来显示可用的快速修复。

Fix style violation

有关 Checkstyle for Java 的更多详情,请访问其 GitHub 仓库