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

Bagaimanakah Saya Boleh Mengakses Pakej Tempatan Dalam Modul My Go 1.11?

DDD
DDDasal
2024-12-26 03:56:17303semak imbas

How Can I Access Local Packages Within My Go 1.11 Modules?

Mengakses Pakej Tempatan dalam Modul Go 1.11

Pernyataan Masalah

Apabila cuba mengakses a pakej tempatan dalam modul Go dengan struktur projek yang serupa dengan yang diterangkan di bawah, kompilasi gagal dengan a ralat "tidak dapat mencari modul".

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

Penyelesaian

Untuk mengakses pakej setempat dalam modul Go, anda perlu mengubah suai fail go.mod projek dan menggunakan arahan ganti. Arahan ini membolehkan anda menentukan laluan setempat untuk pakej yang tidak tersedia dalam repositori jauh.

Langkah-Langkah untuk Menyelesaikan Isu

  1. Tentukan Modul:

    • Dalam contoh yang disediakan, modul untuk projek utama boleh ditakrifkan sebagai github.com/userName/mainModule.
    • Modul untuk pakej platform boleh ditakrifkan sebagai github.com/userName/otherModule.
  2. Ubah suai go.mod Fail:

    • Tambah baris berikut pada fail go.mod:

      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"
    • Ganti laluan fizikal setempat keModul lain dengan mutlak laluan ke direktori akar lainModul direktori.
  3. Import Pakej:

    • Dalam main.go, import pakej yang dikehendaki daripada lainModul:

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

Maklumat Tambahan

  • Arahan ganti membenarkan anda menggantikan kebergantungan jauh dengan laluan setempat, walaupun ia mempunyai nombor versi yang sama.
  • Modul ialah koleksi pakej. Dalam Go 11, anda boleh menggunakan modul untuk mengurus dependensi dan versi.
  • Untuk pengenalan menyeluruh kepada modul Go, rujuk dokumentasi rasmi.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Pakej Tempatan Dalam Modul My Go 1.11?. 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