main.go
package main
import "fmt"
func main() {
fmt.Println("Hello!")
hey()
}
hey.go
package main
import "fmt"
func hey() {
fmt.Println("Hey!")
}
这两个文件都在同一个目录下,运行 go run main.go
的时候报错./main.go:9:2: undefined: hey
go 版本: go1.15.6.linux-amd64
有疑问加站长微信联系(非本文作者)

这不可能吧
go run main.go hey.go
就不会报错方法名要首字母大写
大写了也还是报相同错误
同一个文件下只能有一个main包
内容不能为空
同时选中两个文件再执行
go run main.go
确实这样, 要同时选中以来文件运行:go run main.go hey.go
或者go run .
go run *
Run compiles and runs the named main Go package. Typically the package is specified as a list of .go source files from a single directory, but it may also be an import path, file system path, or pattern matching a single known package, as in 'go run .' or 'go run my/cmd'.
go run
go run main.go hey.go ok
Windows 下用: go run ./
Uni* 下用: go run .