Golang构建找不到路径_ / mnt / c / XXXXX的模块

问题描述

我的系统是Windows 10中的WSL 2。

@H_404_2@ OS: Debian 10 buster Kernel: x86_64 Linux 4.19.104-microsoft-standard Shell: zsh 5.7.1 cpu: AMD Ryzen 9 4900HS with Radeon Graphics @ 16x 2.994GHz

Golang信息:

@H_404_2@go version go1.15.2 linux/amd64 GOROOT="/usr/local/go" GOPATH="/mnt/c/workspace/6.824"

当我通过插件模型构建项目时遇到了一个问题:

@H_404_2@$ go build -buildmode=plugin ../mrapps/wc.go build command-line-arguments: cannot find module for path _/mnt/c/workspace/6.824/src/mr

“ _ / mnt”很奇怪

我该如何解决? 为什么路径前面有“ _”?

请帮助我。

解决方法

我会尝试使用go mod而不是依靠GOPATH

unset GOPATH
cd /mnt/c/workspace/6.824/
go mod init "yourProject"
go build -buildmode=plugin mrapps/wc.go
,

您正在使用go mod。您可以尝试以下命令进行修复:

cd 6.824
go mod init "6.824-golabs-2020" 
# change file src/mrapps/wc.go line9 to `import "6.824-golabs-2020/src/mr"`
cd src
go build -buildmode=plugin mrapps/wc.go

有关mod的更多详细信息,您可以参考https://golang.org/ref/mod