Użyłem, GOPATH
ale w tym bieżącym problemie, przed którym stoję, nie pomaga. Chcę mieć możliwość tworzenia pakietów specyficznych dla projektu:
myproject/
├── binary1.go
├── binary2.go
├── package1.go
└── package2.go
Próbowałem na wiele sposobów, ale jak mam zacząć package1.go
pracować w tym binary1.go
lub innym binary2.go
i tak dalej?
Na przykład; Chcę mieć możliwość, import "package1"
a następnie móc działać go build binary1.go
i wszystko działa dobrze bez wyrzucania błędu, że nie można znaleźć pakietu na GOROOT
lub GOPATH
. Powodem, dla którego potrzebuję tego rodzaju funkcjonalności, są projekty na dużą skalę; Nie chcę odwoływać się do wielu innych pakietów ani przechowywać ich w jednym dużym pliku.
.go
pliki w jednym katalogu są częścią tego samego pakietu i nie potrzebujesz import
plików w tym samym pakiecie (tj. W tym samym katalogu). Wspomniał Pan o pracy poza GOPATH, co jest jedną z możliwości nowego systemu modułów Go. Ta odpowiedź dotyczy struktury modułu, importowania pakietów lokalnych, organizowania pakietów w module, czy mieć wiele modułów w jednym repozytorium itp.
git/repo/to/my/project
ścieżkę? Po prostu nie widzę powodu, dla którego ktokolwiek miałby chcieć takiego zachowania. Co jeśli przeniesiesz swój projekt w inne miejsce (np. Obraz Dockera), będziesz musiał ponownie zmienić wszystkie ścieżki? Szukam odpowiedzi, dlaczego to takie skomplikowane.