go:同一个package下不同方法相互调用

一个包下只能有一个go文件有main()方法。在一个包下会有多个go文件,需要在一个go文件中调另一个go文件的方法,示例如下:

文件:/path/file1.go

package main
import "fmt"

func test(){
    fmt.Println("xxx")
}

文件:/path/file2.go

package main

func main(){
    test()
}

如果直接执行file2.go会报错,提示test()找不到,如:>>>undefined: test

原因:执行file2.go时未一起编译file1.go,所以报错

解决:先一起编译,再执行,如:

先go build .

再go run file1.go file2.go

或者直接go run *.go