Rumah >pembangunan bahagian belakang >Golang >Bagaimanakah Saya Mengakses Pakej Tempatan Dalam Modul Go?

Bagaimanakah Saya Mengakses Pakej Tempatan Dalam Modul Go?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-22 05:04:13647semak imbas

How Do I Access Local Packages Within a Go Module?

Mengakses Pakej Tempatan Dalam Modul Go

Soalan:

Tidak dapat mengakses pakej tempatan dalam modul Go. Struktur projek adalah seperti berikut:

/
  - /platform
      - platform.go
  - main.go
  - go.mod

Mengimport pakej platform dalam main.go mengakibatkan ralat: tidak dapat mencari modul untuk platform laluan.

Jawapan:

Untuk mengakses pakej tempatan dalam modul Go, anda boleh menggunakan arahan ganti dalam fail go.mod. Arahan ini membolehkan anda menentukan laluan setempat ke modul yang tidak diterbitkan dari jauh.

Dalam fail go.mod modul utama, tambah baris berikut:

module github.com/userName/mainModule

require "github.com/userName/otherModule" v0.0.0
replace "github.com/userName/otherModule" v0.0.0 => "local physical path to the otherModule"

Laluan yang ditentukan harus menunjuk ke direktori akar modul, dan boleh menjadi mutlak atau relatif.

Dalam main.go, untuk mengimport pakej tertentu seperti platform daripada lainModul modul, gunakan laluan import berikut:

import "github.com/userName/otherModule/platform"

Maklumat Tambahan:

  • Modul dalam Go ialah koleksi pakej. Dalam Go 11, anda boleh menggunakan modul tanpa menerbitkannya dari jauh.
  • Jika pakej berada dalam projek yang sama, anda boleh mengimportnya terus menggunakan nama pakejnya.
  • Untuk modul berasingan, arahan ganti digunakan untuk merujuk pakej tempatan tanpa menerbitkannya dari jauh.

Rujuk sumber berikut untuk mendapatkan maklumat lanjut butiran:

  • [Modul Golang](https://go.dev/blog/modules)

Atas ialah kandungan terperinci Bagaimanakah Saya Mengakses Pakej Tempatan Dalam Modul 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