为什么无法识别其他“主”包中定义的函数?

时间:2015-02-17 21:32:49

标签: go

我必须提交main.go和main2.go文件。在main.go中,我定义了main()函数以及main2.go中的调用somefunc()。问题是,当我运行go run main.go时,它表示somefunc()未定义。基本上它不会扫描包中的其他主要功能。但是,如果我在main.go中声明这个somefunc()它可以工作,但是当我运行go test时它说该函数被重新声明。

问题:我有什么方法可以告诉go run表现得像go test并编译/运行包中的所有文件(在本例中是main.go和main1.go)而不仅仅是main 。去?

1 个答案:

答案 0 :(得分:3)

您必须包含所有文件作为go run的参数。

go run main1.go main.go

go *.go

除非同一文件夹中有测试文件。