2013-02-06 29 views
22

Próba uruchomienia prostego programu hello world go zwraca błąd.Jak naprawić ten błąd "runtime.main: undefined main.init"

# command-line-arguments 
runtime.main: undefined: main.init 
runtime.main: undefined: main.main 

Zawartość pliku:

package main  
import "fmt" 
func main() { 
    fmt.Println("Hello, World!") 
} 

main jest oczywiście zdefiniowane i dodanie func init() {} nie pomaga.

Obie komendy run i build powodują ten sam błąd.

go build hello_test.go 
go run hello_test.go 
+2

Prawdopodobnie nie chcesz nazywać pliku kończącego się na '_test', chyba że jest to plik testu jednostkowego. –

Odpowiedz

27

Zmień nazwę pliku hello_test.go na np. hello.go i powinno działać zgodnie z oczekiwaniami. Pliki źródłowe kończące się na _test są specjalne (dla systemu do budowania go). Są zarezerwowane dla polecenia go test.

Powiązane problemy