Heim  >  Artikel  >  Backend-Entwicklung  >  „ kann nicht importiert werden. Die aktuelle Datei ist nicht im Arbeitsbereichsmodul enthalten“ in VS Code

kann nicht importiert werden. Die aktuelle Datei ist nicht im Arbeitsbereichsmodul enthalten“ in VS Code

王林
王林nach vorne
2024-02-10 18:42:171195Durchsuche

VS Code 中“无法导入 <package> Die aktuelle Datei ist nicht im Arbeitsbereichsmodul enthalten. Dieser Fehler tritt normalerweise auf, wenn wir versuchen, ein Paket oder Modul zu importieren, die aktuelle Datei jedoch nicht zum Arbeitsbereich hinzugefügt wird. Die Lösung dieses Problems ist eigentlich ganz einfach: Fügen Sie einfach die aktuelle Datei zum Arbeitsbereich hinzu. In diesem Artikel erfahren Sie, wie Sie dieses Problem beheben können, damit Sie die erforderlichen Pakete und Module reibungslos importieren können. </p><p>Frageninhalt<package></p>Ich kann das URL-Paket nicht importieren. Selbst wenn ich die Pakete mit „go get github...“ auf meinem System installiere und sicherstelle, dass sie in der Datei go.mod vorhanden sind, sehe ich: <h2 class=

could not import <package> current file is not included in a workspace module
Ich erinnere mich, dass ich noch vor ein paar Wochen nicht einmal „go work init“ in jedem Golang-Projektverzeichnis auf meinem System ausführen musste. Aber jetzt werde ich gebeten, diese zum Arbeitsbereich hinzuzufügen. Wenn ich an diesem Punkt ein Paket vom Terminal installiere, importiere ich einfach das installierte Paket in meinen Code und der Code wird ausgeführt!

Ich versuche gerade ein Projekt mit „ebitengine“ zu erstellen, dazu habe ich den folgenden Befehl ausgeführt

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)

Bitte helfen Sie mir zu verstehen, was mit meinem System nicht stimmt und warum ich das Paket nicht richtig importieren kann.

Die Ausgabe von „go env“ ist:

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"

Ähnlicherweise enthält mein Bashrc:

export GOPATH=$HOME/go
export GOBIN=$GOPATH/bin
export PATH=${PATH}:$GOBIN

Bitte helfen Sie mir zu verstehen, wo ich falsch liege und warum mein VS-Code nicht mehr richtig funktioniert.

Lösung

Das Problem war ein falscher GOPATH und GOROOT in meinen ~/.profile- und ~/.bashrc-Dateien.

Ich habe die vorhandenen Zeilen GOPATH und GOROOT durch die folgenden Zeilen ersetzt und das Problem wurde gelöst:

Das obige ist der detaillierte Inhalt von„ kann nicht importiert werden. Die aktuelle Datei ist nicht im Arbeitsbereichsmodul enthalten“ in VS Code. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:stackoverflow.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen