> 백엔드 개발 > Golang > Go 모듈 오류: '패키지 package1이 GOROOT에 없습니다'라는 메시지가 나타나는 이유는 무엇이며 어떻게 해결합니까?

Go 모듈 오류: '패키지 package1이 GOROOT에 없습니다'라는 메시지가 나타나는 이유는 무엇이며 어떻게 해결합니까?

Susan Sarandon
풀어 주다: 2024-12-03 08:07:11
원래의
932명이 탐색했습니다.

Go Module Error: Why is

Go 모듈 오류: GOROOT에 패키지가 없음

문제:

실행 시 go run main.go에서 사용자는 다음을 경험하게 됩니다. 오류:

package package1 is not in GOROOT (/usr/local/go/src/package1)
로그인 후 복사

원인:

이 오류는 Go 모듈 시스템이 GOROOT 디렉터리에서 지정된 패키지를 찾을 수 없을 때 발생합니다.

해결책:

이 문제를 해결하려면 환경 변수가 다음과 같은지 확인하세요. 올바르게 구성되었습니다. 다음 단계를 따라야 합니다.

  1. GOPATH 구성:

    • GOROOT 외부에 /mnt/와 같은 GOPATH 디렉토리를 만듭니다. sda1/programming/gopath.
    • GOPATH 환경 변수 설정 이 디렉토리를 가리키려면:

      export GOPATH=/mnt/sda1/programming/gopath
      로그인 후 복사
  2. GOROOT 조정:

    • 다음을 확인하세요. GOROOT은 시스템에 설치된 Go 루트로 설정됩니다. 디렉토리:

      export GOROOT=/usr/local/go
      로그인 후 복사
  3. GOROOT를 PATH에 추가:

    • GOROOT를 PATH에 추가 PATH 환경 변수:

      export PATH=$PATH:$GOROOT/bin
      로그인 후 복사
  4. Go 모듈 활성화:

    • GO111MODULE 환경 변수 설정 에게 on:

      export GO111MODULE=on
      로그인 후 복사
  5. Bashrc 업데이트:

    • 위의 환경 변수를 .bashrc에 추가합니다. 파일.
    • .bashrc를 로드합니다. 터미널의 파일:

      source ~/.bashrc
      로그인 후 복사
  6. 모듈 다시 초기화:

    • 다음이 포함된 기본 폴더로 이동합니다. main.go.
    • go mod로 Go 모듈 다시 초기화 init main.
  7. 패키지 디렉토리 생성:

    • 패키지 디렉토리를 생성합니다(예: package1).
    • package1 내부에 package1 패키지로 필요한 파일을 생성합니다. 지시문.
    • 패키지 디렉터리 내에 go.mod 파일을 생성하지 마세요.
  8. 패키지 가져오기:

    • main.go에서 import package:

      import "main/package1"
      로그인 후 복사
  9. bashrc 다시 로드:

    • source ~/.bashrc를 다시 실행하여 업데이트된 설정을 확인하세요 적용되었습니다.

이 단계가 완료되면 package1 is not in GOROOT 오류가 해결되어야 하며 main.go 파일이 성공적으로 실행되어야 합니다.

위 내용은 Go 모듈 오류: '패키지 package1이 GOROOT에 없습니다'라는 메시지가 나타나는 이유는 무엇이며 어떻게 해결합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿