W moim GOPATH mam coś takiego:Golang: Błąd "Nie można załadować pakiet: Pakiet my_prog: znaleziono pakiety my_prog i głównym"
/bin/
/pkg/
/src/
/src/my_prog/
/src/my_prog/main.go
/src/my_prog/d_interface.go
/src/my_prog/d_struct_that_implements_the_interface.go
W main.go
mam package main
w d_interface.go
i d_struct_that_implements_the_interface.go
mam package my_prog
.
Kiedy próbuję go build my_prog
pojawia się następujący błąd:
can't load package: package my_prog: found packages my_prog (d_interface.go) and main (main.go) in C:\dev\Code\Go\src\my_prog
Czy oznacza to, że każdy plik, który należy do package main
powinien iść we własnym folderze? Jeśli tak, jaki jest tego powód?
Tak, ale czy pakiet główny kwalifikuje się jako niezależny pakiet? Zgodnie z moim rozumieniem, pakiet main jest dziwactwem języka, który zapewnia punkt wejścia (podobnie jak klasy Javy, które mają publiczny statyczny main). – TheTeaMan
Tak, tak to działa. W praktyce umieszczam mój "główny" pakiet bardzo mało kodu, tylko ten, który nie może być użyty w innych programach. –
To dość denerwujące, aby być szczerym. Nie widzę powodu, aby oddzielać główny punkt wejścia od reszty programu. Przyjmuję tę odpowiedź. – TheTeaMan