Rumah > pembangunan bahagian belakang > Golang > Mengapa Projek My Go Menunjukkan 'Pakej XXX tiada dalam GOROOT'?

Mengapa Projek My Go Menunjukkan 'Pakej XXX tiada dalam GOROOT'?

Patricia Arquette
Lepaskan: 2024-12-21 04:06:13
asal
360 orang telah melayarinya

Why Does My Go Project Show

"Pakej XXX tiada dalam GOROOT" semasa Membina Projek Go

Menyahpepijat ralat "projek pakej/permainan tiada dalam GOROOT" memerlukan pemahaman konsep modul Go dan reka letak projek.

Modul dan Projek Go Struktur:

Dalam versi baharu Go (post 1.13), modul Go digunakan untuk mengurus kebergantungan pakej. Modul Go biasanya merupakan direktori yang mengandungi fail go.mod dan kod sumber. Fail go.mod mengisytiharkan nama modul, kebergantungannya dan tempat ia terletak dalam sistem fail.

Menyelesaikan Isu:

  1. Mempunyai fail go.mod di akar projek:
    Pastikan direktori akar projek mengandungi fail go.mod. Fail ini mesti terletak di dalam repositori dan mengisytiharkan nama modul projek.
  2. GOROOT dan GOPATH Tidak Diperlukan:
    Dalam versi Go yang lebih baharu, pembolehubah persekitaran seperti GOROOT dan GOPATH adalah tidak perlu lagi. Kebergantungan pakej diurus melalui go.mod.
  3. Periksa Perintah Binaan:
    Sahkan perintah yang Goland gunakan untuk membina projek. Ia sepatutnya serupa dengan:

    go build -o C:UsersusernameAppDataLocalTemp___go_build_project_server.exe project/server

    Arahan ini tidak sepatutnya menyatakan bendera GOROOT.

  4. Andaikan Lokasi Pakej Salah:
    The mesej ralat mencadangkan bahawa projek menjangkakan pakej projek/permainan berada dalam GOROOT. Walau bagaimanapun, pakej ini hendaklah terletak dalam pepohon sumber projek.
  5. Semak Laluan Pakej:
    Pastikan laluan pakej dalam kod sumber (cth., "projek/permainan") sepadan dengan laluan yang digunakan dalam arahan binaan.

Aliran Kerja dengan Nested Pakej:

Jika projek anda mempunyai pakej bersarang, seperti "projek/permainan/entiti," anda harus mengikuti langkah tambahan ini:

  1. Buat go. fail mod untuk subdirektori:
    Buat fail go.mod di dalam setiap subdirektori yang mengandungi pakejnya sendiri. Fail ini harus mengisytiharkan nama submodul dan pergantungan pada modul induk.
  2. Import Pakej dalam Subdirektori:
    Dalam kod sumber subdirektori, import pakej daripada modul induk menggunakan sintaks:

    import "induk/submodul"

Dengan mengikuti langkah ini, anda boleh menyelesaikan ralat "projek/permainan pakej tiada dalam GOROOT" dan membina projek Go anda dengan pakej bersarang dengan betul.

Atas ialah kandungan terperinci Mengapa Projek My Go Menunjukkan 'Pakej XXX tiada dalam GOROOT'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
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