Go 1.6의 벤더링: 심층 설명
버전 1.6의 Go의 새로운 벤더링 기능을 사용하여 타사 패키지를 가져오는 것은 도전. 프로세스를 명확히 하는 데 도움이 되도록 Goji를 사용하여 특정 사용 사례를 다루겠습니다.
프로젝트 구조
제공하신 프로젝트 구조가 정확하며 공급업체 디렉토리는 src 아래에 있습니다. .
main.go
main.go 파일이 goji에서 필요한 패키지를 올바르게 가져옵니다. 그러나 다음 명령을 먼저 실행하여 공급업체 디렉터리를 적절하게 초기화해야 한다는 점에 유의하는 것이 중요합니다.
go mod vendor
이 명령은 공급업체의 모든 종속성을 나열하는 공급업체/매니페스트 파일을 생성합니다.
환경변수
제공된 환경변수가 올바르게 설정되어 있습니다. GOPATH가 프로젝트의 src 폴더가 포함된 디렉터리로 설정되어 있는지 확인하세요.
빌드 명령
시도한 go run 및 go build 명령이 예상대로 작동하지 않습니다. 공급업체 디렉터리가 아닌 기본 GOPATH에서 패키지를 검색합니다.
솔루션
공급업체를 사용하여 프로그램을 빌드하려면 다음 명령을 사용하세요.
go build -mod=vendor ./src/main.go
설명
-mod=vendor 플래그는 go build 명령에 기본 GOPATH를 검색하는 대신 벤더 종속성을 사용하도록 지시합니다.
대체 접근 방식
vendor 디렉토리를 사용하지 않으려면 import 문에서 goji 패키지의 전체 경로를 수동으로 지정할 수 있습니다.
import "github.com/zenazn/goji/web"
참고 프로젝트 디렉터리에서 go.mod 파일을 초기화하려면 go mod init를 실행해야 합니다.
이 단계를 따르면 Go 1.6의 공급업체를 사용하여 타사 패키지를 성공적으로 가져올 수 있습니다.
위 내용은 Go 1.6의 새로운 벤더링 기능을 올바르게 사용하여 내 프로젝트에서 타사 패키지, 특히 goji를 가져오려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!