'Tidak boleh mengimport Fail semasa tidak disertakan dalam modul ruang kerja' dalam Kod VS

王林
Lepaskan: 2024-02-10 18:42:17
ke hadapan
1195 orang telah melayarinya

VS Code 中“无法导入 <package> Fail semasa tidak disertakan dalam modul ruang kerja

Apabila editor php Xigua menggunakan Kod VS, anda mungkin menghadapi mesej ralat: "Tidak boleh mengimport Fail semasa tidak disertakan dalam modul ruang kerja". Ralat ini biasanya berlaku apabila kami cuba mengimport pakej atau modul tetapi fail semasa tidak ditambahkan ke ruang kerja. Penyelesaian kepada masalah ini sebenarnya sangat mudah, cuma tambah fail semasa ke ruang kerja. Dalam artikel ini, kami akan memperincikan cara menyelesaikan isu ini supaya anda boleh mengimport pakej dan modul yang diperlukan dengan lancar.

Kandungan soalan

Saya tidak boleh mengimport pakej URL. Walaupun saya memasang pakej pada sistem saya menggunakan "go get github..." dan pastikan ia hadir dalam fail go.mod, saya nampak:

could not import <package> current file is not included in a workspace module
Salin selepas log masuk

Saya masih ingat hanya beberapa minggu yang lalu saya tidak perlu menjalankan "go work init" dalam setiap direktori projek Golang pada sistem saya. Tetapi sekarang saya diminta untuk menambahkan ini pada ruang kerja. Pada ketika itu, apabila saya memasang sebarang pakej dari terminal, saya hanya mengimport pakej yang dipasang dalam kod saya dan kod itu berjalan!

Saya sedang cuba membuat projek menggunakan faham "ebitengine", untuk ini saya menjalankan arahan berikut

go mod init PROJECT (in the directory same as the code)
go work init
go get -u github.com/hajimehoshi/ebiten/v2
go mod init PROJECT (Again because the error was still being shown)
go work init (Again because the error was still being shown)
Salin selepas log masuk

Sila bantu saya memahami masalah sistem saya dan sebab saya tidak boleh mengimport pakej dengan betul.

Keluaran menjalankan "go env" ialah:

GO111MODULE="auto"
GOARCH="amd64"
GOBIN="/home/user/go/bin"
GOCACHE="/home/user/.cache/go-build"
GOENV="/home/user/.config/go/env"
GOEXE=""
GOEXPERIMENT=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GOMODCACHE="/home/user/go/pkg/mod"
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/user/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GOVCS=""
GOVERSION="go1.20.2"
GCCGO="gccgo"
GOAMD64="v1"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD="/home/user/Desktop/learnings/go/14SwitchCase/go.mod"
GOWORK="/home/user/Desktop/learnings/go/go.work"
CGO_CFLAGS="-O2 -g"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-O2 -g"
CGO_FFLAGS="-O2 -g"
CGO_LDFLAGS="-O2 -g"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -Wl,--no-gc-sections -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build1152057857=/tmp/go-build -gno-record-gcc-switches"
Salin selepas log masuk

Begitu juga, bashrc saya mengandungi:

export GOPATH=$HOME/go
export GOBIN=$GOPATH/bin
export PATH=${PATH}:$GOBIN
Salin selepas log masuk

Tolong bantu saya memahami di mana silap saya dan mengapa Kod VS saya tidak lagi berfungsi dengan betul.

Penyelesaian

Masalahnya ialah GOPATH dan GOROOT dalam fail ~/.profile dan ~/.bashrc saya.

Saya menggantikan GOPATH dan GOROOT sedia ada dengan baris berikut dan masalah telah diselesaikan:

Atas ialah kandungan terperinci 'Tidak boleh mengimport Fail semasa tidak disertakan dalam modul ruang kerja' dalam Kod VS. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:stackoverflow.com
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!