Go 超慢编译时间

Go 超慢编译时间,go,Go,我在电脑中正常使用Go,编译速度非常快(

我在电脑中正常使用Go,编译速度非常快(<1s),但不幸的是,在visual studio代码Go插件要求我安装一大堆东西后,我的Go变得非常慢,一个简单的代码如下:

主程序包
进口(
“fmt”
)
func main(){
fmt.Println(“你好”)
}
正在花费10秒以上的时间执行:

[Running] go run "c:\dev\workspace\go\test\src\main.go"
Hello

[Done] exited with code=0 in 45.596 seconds

[Running] go run "c:\dev\workspace\go\test\src\main.go"
Hello

[Done] exited with code=0 in 16.242 seconds

[Running] go run "c:\dev\workspace\go\test\src\main.go"
Hello

[Done] exited with code=0 in 14.759 seconds

[Running] go run "c:\dev\workspace\go\test\src\main.go"
Hello

[Done] exited with code=0 in 15.492 seconds

[Running] go run "c:\dev\workspace\go\test\src\main.go"
Hello

[Done] exited with code=0 in 16.047 seconds
我已经尝试过的:

  • 卸载所有内容并重新安装
  • 将Go版本更改为1.4(它提高了编译时间,但是 没什么大不了的,就像这个版本在~7编译的那样 秒,什么仍然使它变慢)
  • 尝试其他IDE(Idea)
现在我使用的是最新的Go版本:

$ go version
go version go1.15.2 windows/amd64
我的“围棋环境”:


有没有人经历过这件事,能给我一些关于这个问题的线索?谢谢大家!

首先检查命令行(CLI)中的问题是否仍然存在

如果是,则通过在同一CMD会话中设置简化路径,确保这不是路径问题:

set PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\WINDOWS\System32\WindowsPowerShell\v1.0\
将GH=C:\path\to\git设置为
设置路径=%GH%\bin;%GH%\usr\bin;%GH%\mingw64\bin;%路径%
设置路径=%USERPROFILE%\go\bin;%路径%
设置路径=c:\go\bin;%路径%

这种缓慢的编译可能表明您安装的Go SDK与当前平台或
GOOS
GOARCH
环境变量指示的平台不同,这需要每次都将标准库重新编译到目标平台。如果您有64位体系结构,那么您应该有windows-amd64 SDK(而不是windows-386)。请注意,
go run
时间是编译和执行,而不仅仅是编译。“将go版本更改为1.4”-我希望您实际上没有这样做。围棋1.4是古老的。。。更不用说慢多了。
[正在运行]。。。[完成]
您发布的序列来自vscode的
输出
选项卡,对吗?当从外部控制台执行
go run…/main.go
时,您是否看到相同的慢度?从vscode中的嵌入式终端?我这样做了,但同样的问题仍然存在。缓慢持续存在于所有工具中,甚至在CMD中。@tiagomac您使用的Widows版本是什么?
$ go env
set GO111MODULE=
set GOARCH=amd64
set GOBIN=
set GOCACHE=C:\Users\ticunha\AppData\Local\go-build
set GOENV=C:\Users\ticunha\AppData\Roaming\go\env
set GOEXE=.exe
set GOFLAGS=
set GOHOSTARCH=amd64
set GOHOSTOS=windows
set GOINSECURE=
set GOMODCACHE=C:\dev\workspace\go\pkg\mod
set GONOPROXY=
set GONOSUMDB=
set GOOS=windows
set GOPATH=C:\dev\workspace\go
set GOPRIVATE=
set GOPROXY=https://proxy.golang.org,direct
set GOROOT=c:\go
set GOSUMDB=sum.golang.org
set GOTMPDIR=
set GOTOOLDIR=c:\go\pkg\tool\windows_amd64
set GCCGO=gccgo
set AR=ar
set CC=gcc
set CXX=g++
set CGO_ENABLED=1
set GOMOD=
set CGO_CFLAGS=-g -O2
set CGO_CPPFLAGS=
set CGO_CXXFLAGS=-g -O2
set CGO_FFLAGS=-g -O2
set CGO_LDFLAGS=-g -O2
set PKG_CONFIG=pkg-config
set GOGCCFLAGS=-m64 -mthreads -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=C:\Users\ticunha\AppData\Local\Temp\1\go-build323480842=/tmp/go-build -gno-record-gcc-switches