我正在使用 beego 框架进行游戏和学习,但是我的 hello world 示例没有运行,并且我确定 beego 执行基于 os.Args[0] 的 chdir 并且程序在那里运行。这就是应用程序运行但找不到视图目录的原因。
所以回溯到一个更简单的级别,文件名“example.go”:
package main
import (
"fmt"
"os"
)
func main() {
fmt.Println(os.Getwd())
fmt.Println(os.Args[0])
}
将输出:
/<directory 'go run this_file.go' was run in>/ <nil>
/tmp/go-build178877254/command-line-arguments/_obj/exe/example
我对 go 的理解不够,为什么会这样。我的第一个想法是我正在使用 gvm(go 版本管理器),这是因为有些事情发生了。任何帮助表示赞赏。
编辑:
显然,
去建造
。/例子
产生更好的、预期的和成功的结果:
<directory './example' was run in>/ <nil>
<directory './example' was run in>/