0

在 Go 1.8+ 中,GOPATH环境变量是可选的。未设置时,GOPATH默认为$HOME/go. 在某些标准库包中是否有一个变量或函数将显示的最终值GOPATH(我希望runtime.GOROOT()即使在没有GOPATH设置环境变量的情况下也可以推断出来?

4

1 回答 1

2

GOPATH从技术上讲,它不存在于运行时中,它仅由构建工具使用。GOARCH, GOOS, 和GOROOT是编译时记录的唯一变量,但它们仍然不影响运行时的执行。

GOPATH您可以在环境中检查,$HOME/go如果不存在则回退。但是,这仍然不能保证您已经GOPATH习惯了构建二进制文件,因为应用程序可能不是由同一个用户构建的,甚至不是在同一个系统上构建的。

于 2017-01-19T22:14:03.340 回答