Rumah > pembangunan bahagian belakang > Golang > Mengapa Modul Go membuang ralat 'modul pengganti tanpa versi mestilah laluan direktori (berakar atau bermula dengan...)'?

Mengapa Modul Go membuang ralat 'modul pengganti tanpa versi mestilah laluan direktori (berakar atau bermula dengan...)'?

Susan Sarandon
Lepaskan: 2024-11-05 17:56:02
asal
1110 orang telah melayarinya

Why does Go Modules throw the

modul go - "modul penggantian tanpa versi mestilah laluan direktori (berakar atau bermula dengan...") Glitch

Dalam konteks daripada modul go, arahan ganti membolehkan anda menggantikan modul dengan laluan setempat. Walau bagaimanapun, arahan ini mempunyai keperluan khusus: laluan mesti sama ada berakar (bermula dengan "/") atau relatif kepada akar modul.

Memahami Isu

Dalam senario yang disediakan, percubaan untuk menggunakan pakej setempat (mypack) dalam modul go (goweb) mengakibatkan ralat: "modul penggantian tanpa versi mestilah laluan direktori (berakar atau bermula dengan .)" Ralat ini menunjukkan bahawa laluan yang ditentukan untuk arahan ganti tidak memenuhi format yang diperlukan.

Menyelesaikan Isu

Untuk menyelesaikan isu ini, pastikan laluan untuk arahan ganti memenuhi syarat berikut :

  • Ia mestilah laluan mutlak (bermula dengan "/").
  • Jika laluan itu relatif, ia mesti relatif kepada direktori akar modul (direktori yang mengandungi fail go.mod).

Penyelesaian

Dalam kes modul goweb, memandangkan mypack ialah adik beradik kepada direktori akarnya, arahan ganti yang betul ialah:

<code class="go">replace mypack => ../mypack</code>
Salin selepas log masuk

Selain itu, untuk penggantian ini berfungsi dengan berkesan, mypack juga mesti ditukar menjadi modul go dengan menambahkan fail go.mod pada direktorinya. Ini boleh dilakukan dengan menjalankan arahan go mod init mypack dalam direktori mypack.

Pertimbangan Lain

Jika apl dan pakej yang digunakannya adalah sebahagian daripada yang sama modul go, menambahnya pada go.mod tidak perlu. Merujuk kepada pakej dalam kod sahaja sudah memadai.

Sumber

  • [Ganti Arahan dalam Modul Go](https://go.dev/ref /mod#hdr-Replace_Directives)
  • [Bagaimana untuk menggunakan modul yang berada di luar "GOPATH" dalam modul lain?](https://stackoverflow.com/questions/52576751/how-to-use- a-modul-yang-di luar-gopath-dalam-modul-lain)

Atas ialah kandungan terperinci Mengapa Modul Go membuang ralat 'modul pengganti tanpa versi mestilah laluan direktori (berakar atau bermula dengan...)'?. 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