运行go fmt./。。。在不同的操作系统上有不同的行为

运行go fmt./。。。在不同的操作系统上有不同的行为,go,vscode-settings,gofmt,Go,Vscode Settings,Gofmt,当我在vscode中的项目根目录下运行go fmt./…时,我在不同的操作系统上得到了不同的格式化结果: Windows import ( "github.com/abc" "gotest.tools/assert" "testing" ) MacOS import ( "testing" "github.com/abc" "gotest.tools/assert" ) 这是不同操作系统中gofmt的预期行为吗?如果是这样,如何在vscode中配置代码格式规则以使其一致 编辑:我在两个操

当我在vscode中的项目根目录下运行
go fmt./…
时,我在不同的操作系统上得到了不同的格式化结果:

Windows

import (
"github.com/abc"
"gotest.tools/assert"
"testing"
)

MacOS

 import (
"testing"

"github.com/abc"
"gotest.tools/assert"
)

这是不同操作系统中
gofmt
的预期行为吗?如果是这样,如何在vscode中配置代码格式规则以使其一致


编辑:我在两个操作系统上使用了相同版本的Golang。

很可能在不同的平台上有不同版本的gofmt。另一个选项-不同的命令集

您可以尝试按如下方式运行命令:

go fmt -n ./...
它应该打印
gofmt
实用程序调用的详细信息。您可以区分不同平台的输出


根据我过去的经验,VSCode似乎不可靠,我不得不改用GoLand。

您在两个操作系统中使用的Go版本相同吗?是的,我是Go版本go1.13.5我在两个操作系统上使用的Go版本相同,GoLand确实让人头痛:)