質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

Q&A

解決済

1回答

9374閲覧

【Go】エディタを開くたびにError loading workspace folders (expected 1, got 0)と出る

noa-1129

総合スコア25

Go

Go(golang)は、Googleで開発されたオープンソースのプログラミング言語です。

0グッド

0クリップ

投稿2020/10/12 13:46

前提・実現したいこと

golangでspaを作っている際、プロジェクトをエディタで開くたびにError loading workspace folders (expected 1, got 0)とエラーが出てしまいます。

発生している問題・エラーメッセージ

Error loading workspace folders (expected 1, got 0) failed to load view for file:///Users/noay/go/1.15.2/src/github.com/noa-1129/golang_spa: err: exit status 1: stderr: unexpected directory layout: import path: _/Users/noay/go/1.15.2/src/github.com/noa-1129/golang_spa/controllers/controller root: /Users/noay/go/1.15.2/src dir: /Users/noay/go/1.15.2/src/github.com/noa-1129/golang_spa/controllers/controller expand root: /Users/noay/go/1.15.2 expand dir: /Users/noay/go/1.15.2/src/github.com/noa-1129/golang_spa/controllers/controller separator: / unexpected directory layout: import path: _/Users/noay/go/1.15.2/src/github.com/noa-1129/golang_spa/controllers/controller root: /Users/noay/go/1.15.2/src dir: /Users/noay/go/1.15.2/src/github.com/noa-1129/golang_spa/controllers/controller expand root: /Users/noay/go/1.15.2 expand dir: /Users/noay/go/1.15.2/src/github.com/noa-1129/golang_spa/controllers/controller separator: / unexpected directory layout: import path: _/Users/noay/go/...

試したこと

・goplsのアップデート

go envGO111MODULE="on"の確認

GO111MODULE="on" GOARCH="amd64" GOBIN="" GOCACHE="/Users/noay/Library/Caches/go-build" GOENV="/Users/noay/Library/Application Support/go/env" GOEXE="" GOFLAGS="" GOHOSTARCH="amd64" GOHOSTOS="darwin" GOINSECURE="" GOMODCACHE="/Users/noay/go/1.15.2/pkg/mod" GONOPROXY="" GONOSUMDB="" GOOS="darwin" GOPATH="/Users/noay/go/1.15.2" GOPRIVATE="" GOPROXY="https://proxy.golang.org,direct" GOROOT="/Users/noay/.goenv/versions/1.15.2" GOSUMDB="sum.golang.org" GOTMPDIR="" GOTOOLDIR="/Users/noay/.goenv/versions/1.15.2/pkg/tool/darwin_amd64" GCCGO="gccgo" AR="ar" CC="clang" CXX="clang++" CGO_ENABLED="1" GOMOD="/Users/noay/go/1.15.2/src/github.com/noa-1129/golang_spa/go.mod" CGO_CFLAGS="-g -O2" CGO_CPPFLAGS="" CGO_CXXFLAGS="-g -O2" CGO_FFLAGS="-g -O2" CGO_LDFLAGS="-g -O2" PKG_CONFIG="pkg-config" GOGCCFLAGS="-fPIC -m64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -fdebug-prefix-map=/var/folders/p4/7x0yx4092jz926th2jkb82140000gn/T/go-build008345894=/tmp/go-build -gno-record-gcc-switches -fno-common"

補足情報(FW/ツールのバージョンなど)

go version go1.15.2 darwin/amd64

vscode バージョン: 1.50.0

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

そのエラーはgoplsというツールの出力だと思われます。

以下のコマンドの実行結果を確認してください。
バージョンがv0.5.0であることを確認、VSCodeを再起動しても同じかどうか確認ください。

shell

1$ gopls version 2golang.org/x/tools/gopls v0.5.0 3 golang.org/x/tools/gopls@v0.5.0 h1:XEmO9RylgmaXp33iGrWfCGopVYDGBmLy+KmsIsfIo8Y=

状況が変わらない場合、複数のフォルダをワークスペース上に開いていていずれかのフォルダにアクセスできないというエラーかもしれません。参考情報 https://github.com/golang/go/issues/41255

投稿2020/10/13 02:48

編集2020/10/13 02:56
nobonobo

総合スコア3367

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

noa-1129

2020/10/13 10:53

回答ありがとうございます!私の場合v0.5.1ではありましたが、上記に記してくださった手順を踏み、確認しましたが状況が変わらなかったので、参考情報をもとに自調べしなおし、ワークスペースに/tools /goplsディレクトリを作ると解釈して $ git clone https://go.googlesource.com/tools $ cd tools $ git fetch "https://go.googlesource.com/tools" refs/changes/40/223740/3 && git cherry-pick FETCH_HEAD $ cd gopls $ go install (go installについてはインストール済みのような結果が出た) を試しましたが解決ができませんでした...上記の情報の意図や、他に考えられる解決策などあれば再度ご教授頂きたいです!
nobonobo

2020/10/13 11:21

こちらも0.5.1に上げてみましたが問題の状況にはなりません。正常に動作しています。 VScode 1.50、Go 1.15.2 darwin/amd64、gopls0.5.1で同じ環境ですね。 うーん。あと違うといえばgoenvをやめてみるくらいでしょうか・・・?
nobonobo

2020/10/13 11:23

/Users/noay/go/1.15.2/src/github.com/noa-1129/golang_spaは存在していますか? 存在しているならVSCodeを完全に終了してそのフォルダからcodeコマンドで起動し直してみるとか。
nobonobo

2020/10/13 11:27

あとはVSCodeの設定ですかね設定バックアップしていったん初期に近い状態に戻してみるとか。
noa-1129

2020/10/13 15:14

回答ありがとうございます!再度ご教授いただいた中から、vscodeの設定についてsettings.jsonを全て消してみたらエラーが消えました。さらに深堀って見ると"go.useLanguageServer": true,の記述に反応していました。ここに焦点を当てて再度調べ直してみます!また、これについても心当たりなどあればご教授いただければ幸いです!
noa-1129

2020/10/14 10:16

ご無沙汰しております!先日から再度改めて調べ直し、試行錯誤していたのですが、エラ〜メッセージからcontrollerディレクトリに問題があるのではと思ったところ、サーバー起動用ソースファイルでのcontrollerのインポートの記述が相対パスになっていたので、そちらを訂正することでエラーが消えました!おそらくこれが原因でgoplsにも影響が出ていたのではないかという感じですかね? しっかりインポート文などの見落としにも気をつけようと思います????
nobonobo

2020/10/14 10:30

おお。よかったですね!
noa-1129

2020/10/14 10:57

ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問