gpt4 book ai didi

go - 如何从代码中获取当前的 GOPATH

转载 作者:IT老高 更新时间:2023-10-28 13:04:35 27 4
gpt4 key购买 nike

如何从代码块中获取当前的GOPATH

runtime 只有 GOROOT:

// GOROOT returns the root of the Go tree.
// It uses the GOROOT environment variable, if set,
// or else the root used during the Go build.
func GOROOT() string {
s := gogetenv("GOROOT")
if s != "" {
return s
}
return defaultGoroot
}

我可以创建一个将 GOROOT 替换为 GOPATH 的函数,但是有没有内置函数呢?

最佳答案

使用 os.Getenv

来自文档:

Getenv retrieves the value of the environment variable named by the key. It returns the value, which will be empty if the variable is not present.

例子:

package main

import (
"fmt"
"os"
)

func main() {
fmt.Println(os.Getenv("GOPATH"))
}

Go 1.8+ 更新

Go 1.8 具有通过 go/build 导出的默认 GOPATH:

package main

import (
"fmt"
"go/build"
"os"
)

func main() {
gopath := os.Getenv("GOPATH")
if gopath == "" {
gopath = build.Default.GOPATH
}
fmt.Println(gopath)
}

关于go - 如何从代码中获取当前的 GOPATH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32649770/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com