Rumah > pembangunan bahagian belakang > Golang > Mengapa Pengkompil Go Saya Tidak Dapat Menemui Pakej Luaran Saya?

Mengapa Pengkompil Go Saya Tidak Dapat Menemui Pakej Luaran Saya?

Barbara Streisand
Lepaskan: 2024-12-05 19:38:10
asal
240 orang telah melayarinya

Why Can't My Go Compiler Find My External Packages?

Menggunakan Pakej Bukan GOROOT Go

Soalan: Menghadapi ralat "pakej pakej1 tiada dalam GOROOT (/usr/local/go/ src/package1)" apabila cuba menggunakan pakej luaran dalam Go.

Penjelasan: Ralat ini berlaku apabila pengkompil Go tidak dapat mencari pakej yang ditentukan dalam direktori GOROOT perpustakaan standard. Ia mencadangkan bahawa pakej tidak dipasang atau terletak di luar perpustakaan standard.

Penyelesaian:

  1. Konfigurasikan Pembolehubah Persekitaran:

    • Pastikan pembolehubah persekitaran GO111MODULE ditetapkan kepada "hidup" untuk mendayakan sokongan modul.
    • Tetapkan pembolehubah persekitaran GOPATH kepada direktori di luar GOROOT.
    • Tambahkan kedua-dua GOPATH/bin dan GOROOT/bin pada pembolehubah persekitaran PATH.

    Sebagai contoh, anda boleh menambah baris ini pada .bashrc anda fail:

    export GO111MODULE=on
    export GOPATH=/mnt/sda1/programming/gopath
    export PATH=$PATH:$GOPATH/bin
    
    export GOROOT=/usr/local/go
    export PATH=$PATH:$GOROOT/bin
    Salin selepas log masuk
  2. Muat Pembolehubah Persekitaran:

    • Muat semula pembolehubah persekitaran dengan menjalankan sumber ~/.bashrc.
  3. Memulakan Utama Pakej:

    • Buat direktori baharu untuk projek utama dan mulakan modul dengan go mod init main.
  4. Cipta Pakej Luaran:

    • Buat direktori berasingan untuk luaran pakej.
    • Dalam direktori pakej luaran, cipta sebarang fail yang diperlukan dengan penyataan pakej1 pakej dalam baris pertama.
  5. Import Pakej Luaran:

    • Dalam fail Go utama (main.go), import pakej luaran menggunakan laluannya berbanding dengan pakej utama direktori. Contohnya:
    import "main/package1"
    Salin selepas log masuk

Dengan mengikuti langkah ini, anda boleh memastikan bahawa pengkompil Go anda boleh mencari dan menggunakan pakej luaran, menyelesaikan "pakej pakej1 tiada dalam GOROOT " ralat.

Atas ialah kandungan terperinci Mengapa Pengkompil Go Saya Tidak Dapat Menemui Pakej Luaran Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan