Trying run a simple hello world go program returns an error.
# command-line-arguments
runtime.main: undefined: main.init
runtime.main: undefined: main.main
The file contents:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
main
is obviously defined and adding func init() {}
doesn't help.
Both the run
and build
commands result in the same error.
go build hello_test.go
go run hello_test.go
Rename hello_test.go to e.g. hello.go and it should work as expected. Go source files ending in _test are special (for the go build system). They're reserved for the go test
command.