Rumah >pembangunan bahagian belakang >Golang >Mengapa Saya Mendapat Ralat 'pakej XXX tiada dalam GOROOT' Semasa Membina Projek My Go?

Mengapa Saya Mendapat Ralat 'pakej XXX tiada dalam GOROOT' Semasa Membina Projek My Go?

Barbara Streisand
Barbara Streisandasal
2024-12-20 12:18:10408semak imbas

Why Am I Getting the

"pakej XXX tiada dalam GOROOT" Semasa Membina Projek Go

Konteks

Isu timbul apabila cuba membina projek Go, dan ralat berikut muncul: "projek/permainan pakej tiada dalam GOROOT (C:Gosrcprojectgame)".

Root Punca

Ralat ini biasanya berlaku apabila:

  • GOROOT, GOPATH dan pembolehubah persekitaran GOBIN tidak ditetapkan dengan betul.
  • Projek Go tidak berstruktur dengan betul.
  • Fail go.mod tiada atau tiada dalam projek akar.

Penyelesaian

1. Konfigurasikan Pembolehubah Persekitaran

Jika anda menaik taraf kepada versi Go yang lebih baharu (1.13 ), pembolehubah persekitaran seperti GOROOT, GOBIN dan GOPATH tidak lagi disyorkan.

2. Betulkan Struktur Projek

Pastikan projek anda mempunyai fail go.mod pada akar projek dan struktur direktori berikut:

|- project
    |- game
        |- entity
        |- game_stuff.go
    |- server

3. Gunakan go mod

Daripada bergantung pada pembolehubah persekitaran, gunakan Go Modules (go mod) untuk mengurus kebergantungan modul.

cd project
go mod init remote-repo.com/username/repository

4. Jalankan Perintah daripada Akar Modul

Arahan hendaklah dilaksanakan daripada direktori akar projek. Contohnya:

go run server

5. Tentukan Laluan Modul Penuh

Apabila menggunakan arahan go, terutamanya dari luar akar modul, nyatakan laluan pakej penuh, yang termasuk URI vendor. Contohnya:

go test github.com/username/repository/project/game/entity

6. Tetapkan GOPATH Jika Perlu (Pilihan)

Untuk versi Go yang lebih lama, anda boleh menetapkan GOPATH kepada laluan ruang kerja di mana projek anda berada. Pastikan GOPATH menunjuk ke laluan yang betul.

GOPATH=C:\Users\username\go

Contoh

Untuk membina pakej pelayan dalam struktur direktori yang disediakan:

cd project/server
go build project/server

Arahan ini sepatutnya berjaya membina pakej pelayan tanpa ralat "pakej XXX tiada dalam GOROOT".

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat 'pakej XXX tiada dalam GOROOT' Semasa Membina Projek My Go?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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