Semasa pembangunan Golang, kadangkala anda akan menghadapi ralat "Tidak dapat menyelesaikan direktori". Terdapat banyak sebab untuk ralat ini, tetapi ia biasanya disebabkan oleh beberapa ralat persediaan laluan import asas. Dalam artikel ini, kami akan memperkenalkan sebab mengapa ralat ini berlaku di Golang dan cara menyelesaikannya.
Apabila membangun dengan Golang, struktur projek yang baik adalah sangat penting. Dalam projek, ia biasanya dibahagikan kepada tiga bahagian: pakej utama, pakej lib dan pakej vendor.
Struktur direktori projek Golang biasanya seperti berikut:
project ├── main.go ├── lib │ ├── lib1.go │ ├── lib2.go │ └── lib3.go └── vendor ├── dependency1 └── dependency2
Antaranya, main.go ialah fail kemasukan projek, direktori lib ialah storan lokasi kod logik teras dan Direktori vendor ialah perpustakaan pihak ketiga yang bergantung kepada projek.
Satu lagi punca "Tidak dapat menyelesaikan direktori" ialah tetapan GOPATH yang salah. Di Golang, GOPATH ialah pembolehubah persekitaran yang digunakan untuk menentukan laluan projek Golang. Apabila kami menjalankan program Go dalam terminal atau baris arahan, Go secara automatik menggunakan laluan yang ditetapkan dalam pembolehubah persekitaran GOPATH untuk mencari perpustakaan dan kod sumber.
Sebelum menetapkan GOPATH, anda perlu menjelaskan perkara berikut:
Sebagai contoh, kita boleh menetapkan laluan GOPATH kepada:
export GOPATH=$HOME/go
dan kemudian mencipta tiga direktori src, pkg dan bin di bawah $GOPATH:
cd $GOPATH mkdir -p src pkg bin
Direktori src ialah tempat kod sumber projek Golang disimpan.
Laluan import yang dirujuk oleh pakej Golang hendaklah laluan relatif yang dikira daripada direktori $GOPATH/src. Sebagai contoh, jika kita ingin mengimport fungsi dalam pakej lib dalam main.go, kaedah import yang betul hendaklah:
import "project/lib"
di mana projek ialah nama projek.
Jika anda menghadapi ralat "Tidak dapat menyelesaikan direktori", kemungkinan besar laluan import ditetapkan dengan tidak betul. Anda perlu menyemak semula sama ada laluan import anda ditetapkan dengan betul.
Apabila menggunakan perpustakaan pihak ketiga, anda perlu memasangnya terlebih dahulu. Biasanya, kita boleh menggunakan arahan "go get" untuk mendapatkan dan memasang perpustakaan pihak ketiga. Sebagai contoh, jika kita ingin menggunakan rangka kerja gin, kita boleh menggunakan arahan berikut:
go get -u github.com/gin-gonic/gin
Ini akan mengklon kod rangka kerja gin daripada GitHub, kemudian menyusun, memaut, memasang dan meletakkannya ke dalam $GOPATH / direktori bin.
Jika anda mengabaikan langkah ini, ia akan mengakibatkan ralat "Tidak dapat menyelesaikan direktori".
Dalam pembangunan Golang, jika anda menghadapi ralat "Tidak dapat menyelesaikan direktori", kami perlu menyemak dengan teliti aspek berikut:
Ringkasnya, hanya apabila aspek-aspek ini ditetapkan dengan betul barulah kita dapat menjalankan pembangunan Golang yang lancar.
Atas ialah kandungan terperinci Mengapa golang tidak boleh menghuraikan direktori? Bagaimana untuk menyelesaikannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!