Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Mengapa Saya Mendapat Ralat \"Diimport dan Tidak Digunakan\" dalam Go?

Mengapa Saya Mendapat Ralat \"Diimport dan Tidak Digunakan\" dalam Go?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-10-26 15:22:30323semak imbas

Why Do I Get an

Ralat Import dan Tidak Digunakan Dijelaskan

Apabila mengimport pakej dalam Go, pengkompil menjangkakan untuk mencari penggunaan sebenar pakej tersebut dalam sumber fail. Jika pakej yang diimport tidak digunakan, anda mungkin menghadapi ralat "diimport dan tidak digunakan".

Dalam contoh yang diberikan, import pakej "./api" mencetuskan ralat ini. Sebab untuk ini ialah anda sebenarnya tidak menggunakan apa-apa daripada pakej api. Walaupun anda mempunyai fail yang disimpan dalam folder api, anda perlu memasukkan fail tersebut secara eksplisit menggunakan pernyataan import:

import (
    "log"
    "net/http"
    "os"
    "github.com/emicklei/go-restful"
    "github.com/emicklei/go-restful/swagger"

    // Include the api package
    _ "./api"
)

Dengan menggunakan garis bawah (_) sebagai awalan untuk import, anda pada asasnya memberitahu pengkompil untuk melangkau mengimport kod pakej tetapi masih melaksanakan fungsi permulaannya (jika ada). Ini memastikan kod permulaan pakej folder api anda berjalan tanpa mencetuskan ralat.

Sebagai alternatif, jika anda berhasrat untuk menggunakan fungsi atau jenis tertentu daripada pakej api, anda boleh mengimportnya secara eksplisit:

import (
    // Others here
    api "my-custom-path/api-package"
)

Dalam kes ini, anda boleh menggunakan fungsi atau jenis daripada pakej api dengan menggunakan alias "api", cth.:

api.SomeFunction()

Ingat, biasanya disyorkan untuk mengimport pakej melalui GOPATH untuk mengelakkan import relatif .

Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat \"Diimport dan Tidak Digunakan\" dalam 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