Go에서 하위 패키지 가져오기: 상위 디렉터리 가져오기의 함정
하위 패키지를 가져오려는 과정에서 가져오기 접근 방식이 왜 사용되는지 이해하는 것이 좋습니다. 상위 디렉토리(예: "one/entities/bar/*")는 그렇지 않습니다. 지원됩니다.
Go 가져오기 구문의 한계
Go 언어 사양에 따르면 import 문에는 패키지 이름이나 경로가 필요합니다. 와일드카드 또는 일반 디렉터리 가져오기는 지원되지 않습니다. 사양에 따르면
ImportSpec = [ "." | PackageName ] ImportPath .
명시적 가져오기의 중요성
패키지 이름은 가져온 패키지 내에서 내보낸 식별자에 액세스하는 데 중요합니다. 예를 들어 식별자 bar.Get.Basic.Req.Headers에서는 bar가 가져온 패키지여야 합니다. 명시적인 가져오기가 없으면 컴파일러는 패키지 컨텍스트를 확인할 수 없으며 발생한 컴파일 오류가 발생합니다.
대체 솔루션
현재 와일드카드 가져오기에 대한 공식적인 지원은 없습니다. 이동 중. 그러나 목표를 달성하기 위해 탐색할 수 있는 다양한 접근 방식이 있습니다.
궁극적으로 , Go의 가져오기 구문의 한계를 이해하고 대체 솔루션을 탐색하면 하위 패키지를 효과적으로 가져오는 문제를 극복하는 데 도움이 됩니다.
위 내용은 Go에서 상위 디렉터리를 가져와서 하위 패키지를 가져올 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!