go run提示undefined

今天从GitHub上面 clone 的一个项目,本想本地运行学习一下,没想到 go run 的时候 ,提示变量 undefined. 之前一直在goland下开发, 使用的是ide的 go run,没出现这种问题

提示信息:

# command-line-arguments
./main.go:21:9: undefined: args
./main.go:26:14: undefined: args

解决办法之一

一般来说,main 包下推荐只有一个 main.go 的入口文件

当有其他的go文件 , 并且在其他go文件中定义了函数

如果非得这样做那么go run 的时候把所有文件都得加上 , 否则默认只加载main.go这一个文件

只有非main包里的文件才会通过依赖去自动加载。所以你需要输入多个文件作为参数

应该使用 go run a.go b.go c.gogo run *.go 来运行,编译同理。

作者

Fat Dong

发布于

2022-03-10

更新于

2022-03-12

许可协议