Go로 하위 패키지 가져오기: "No Go Files" 오류 해결
Go에서 상위 디렉토리를 참조하여 하위 패키지를 가져오는 것은 직접적으로 수행되지 않습니다. 지원됩니다. 그러나 "[상위 디렉터리]에 Go 파일이 없습니다."라는 일반적인 오류 메시지를 해결하는 대체 접근 방식이 있습니다.
다음 시나리오를 고려하세요.
package main import "one/entities/bar" func main() { }
이 디렉터리 구조를 사용하는 경우:
- one - entities - bar - file.go
go install main을 사용하여 프로젝트를 빌드하려고 하면 하위 패키지 디렉터리에 Go 파일이 없다는 오류가 발생합니다. 가져오기 문에는 명시적인 패키지 이름이나 경로가 필요하므로 이 문제를 해결하려면 와일드카드 구문을 사용하여 하위 패키지를 가져올 수 없습니다.
하위 패키지를 올바르게 가져오려면 각 하위 패키지를 개별적으로 가져와야 합니다. 예를 들어 bar 하위 패키지를 가져오려면 main.go 파일을 다음과 같이 수정합니다.
package main import ( "one/entities/bar/file1" "one/entities/bar/file2" ) func main() { }
또는 사용자 정의 가져오기 경로를 사용하여 단일 import 문 아래 관련 하위 패키지를 그룹화할 수 있습니다. 이렇게 하면 가독성이 향상되고 가져오기 라인 수를 줄일 수 있습니다. 이를 달성하려면 one/entities 디렉터리 내에 import라는 디렉터리를 만들고 그 안에 init.go라는 파일을 배치합니다. init.go 파일 내에서 사용자 정의 가져오기 경로를 정의하고 원하는 하위 패키지를 가져옵니다.
// import/init.go package entities import ( _ "one/entities/bar/file1" _ "one/entities/bar/file2" )
그런 다음 main.go 파일에서 사용자 정의 가져오기 경로를 사용하여 엔터티 패키지를 가져옵니다.
// main.go package main import ( "log" "one/entities" ) func main() { v := entities.Bar_file1.Get.Basic.Req.Headers{} log.Fatal(v) }
이러한 접근 방식을 따르면 Go에서 하위 패키지를 올바르게 가져오고 "Go 파일 없음" 오류를 해결하고 더 나은 코드를 위해 가져오기를 구성할 수 있습니다. 가독성.
위 내용은 Go에서 하위 패키지를 가져오는 방법: \'No Go Files\' 오류가 발생하면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!