如何在 Visual Studio Code 中配置“staticcheck”linter?

Cor*_*nos 5 go go-staticcheck

我安装了 staticcheck,但它没有告诉我 Visual Studio Code 中存在任何问题。

我将 linter 配置为使用 staticcheck,并在互联网上到处查找。它仍然不起作用。

这是我的settings.json文件的一部分:

{
  "go.formatTool": "goimports",
  "go.useLanguageServer": true,
  "go.lintTool": "staticcheck",
  "go.lintFlags": [],
  "go.testFlags": ["-v"],
  "go.toolsManagement.autoUpdate": true,
  "editor.codeActionsOnSave": { "source.fixAll.eslint": true }
}
Run Code Online (Sandbox Code Playgroud)

我已经尝试添加"-check=all"go.lintFlags. 我重新加载了 Visual Studio Code,但它仍然无法工作。

当我查看官方网站时,他们谈到了staticcheck.conf,但我不明白,因为staticcheck.conf我的系统上有多个指定的文件。

Ole*_*zov 8

您不需要"go.lintTool": "staticcheck",,因为这是 ( staticcheck) 中的默认 linting 工具vscode-go

如果您启用了语言服务,则需要staticcheck 显式使用

"gopls": { "ui.diagnostic.staticcheck": true }.
Run Code Online (Sandbox Code Playgroud)

或者,您可以设置golangci-lint为 linter 并提交staticcheck它。