GOPATH
왜 내 홈디렉토리에 go 라는 디렉토리가 있나요?
go env GOPATH 를 입력하면 GOPATH 주소를 확인할 수 있다
기본 GOPATH는 $HOME/go이며, Go 설치 시 자동으로 생성됩니다.
아픈 손가락 GOPATH
아주 먼 옛날 go를 하기 위해서는 무조건$GOPATH/src 디렉토리 안에서 개발을 했어야 됐다는 사실을 알고 계셨나요?
의존 라이브러리도 $GOPATH/src에 다운받아서 개발했지만, 지금은 누구나 Go Modules(go mod)를 사용하면, 프로젝트 위치와 상관없이 개발할 수 있습니다.
그럼 GOPATH 를 날려도 되나요?
모듈 모드에서는 go get으로 설치한 외부 패키지가 $GOPATH/pkg/mod에 캐싱되며,
빌드 시 재사용됩니다.
따라서 $GOPATH/src에 직접 코드를 두지 않아도 되고, 새로운 프로젝트는 어디서든 만들 수 있습니다.