go 모듈 - "버전이 없는 교체 모듈은 디렉터리 경로여야 합니다(루팅되거나 다음으로 시작하는...") 결함
문맥에서 go 모듈 중 바꾸기 지시문을 사용하면 모듈을 로컬 경로로 바꿀 수 있습니다. 그러나 이 지시문에는 특정 요구 사항이 있습니다. 경로는 루트("/"로 시작)이거나 모듈의 루트에 상대적이어야 합니다.
문제 이해
제공된 시나리오에서 go 모듈(goweb) 내에서 로컬 패키지(mypack)를 사용하려고 시도하면 "버전이 없는 교체 모듈은 디렉터리 경로(루트 또는 로 시작)여야 합니다."라는 오류가 발생했습니다. 이 오류는 경로가 바꾸기 지시문에 지정된 경로가 필수 형식을 충족하지 않습니다.
문제 해결
이 문제를 해결하려면 바꾸기 지시문의 경로가 다음 조건을 충족하는지 확인하세요. :
해결 방법
goweb 모듈의 경우 mypack은 루트 디렉터리의 형제이므로 올바른 교체 지시문 is:
<code class="go">replace mypack => ../mypack</code>
또한 이 교체가 효과적으로 작동하려면 mypack을 해당 디렉토리에 go.mod 파일을 추가하여 go 모듈로 변환해야 합니다. 이는 mypack 디렉토리 내에서 go mod init mypack 명령을 실행하여 수행할 수 있습니다.
기타 고려 사항
앱과 앱에서 사용하는 패키지가 동일한 일부인 경우 go 모듈을 go.mod에 추가할 필요는 없습니다. 단순히 코드 내에서 패키지를 참조하면 충분합니다.
리소스
위 내용은 Go 모듈에서 "버전이 없는 교체 모듈은 디렉터리 경로(루트 또는...로 시작)여야 합니다." 오류가 발생하는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!