go - 使用go.mod在目录中将软件包安装到GOPATH

标签 go go-modules gopath

我想使用GOPATH将软件包安装到go get。随着go工具迁移到go mod支持,这变得棘手。

在项目目录(= go.mod文件所在的目录)之外没有任何问题。在项目目录中,我希望设置G0111MODULE变量可以完成此任务,但不能这样做。

G0111MODULE=off go get <package name>

如何在包含GOPATH文件的目录中将软件包安装到go.mod
谢谢。
go env输出:
GO111MODULE="on"
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/zb/Library/Caches/go-build"
GOENV="/Users/zb/Library/Application Support/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GONOPROXY=""
GONOSUMDB=""
GOOS="darwin"
GOPATH="/Users/zb/dev/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/Cellar/go/1.13/libexec"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.13/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
AR="ar"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/zb/dev/mycopmany/links/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/gf/8xg53y0j2h9d3k5g3_vvvw9m0000gn/T/go-build248955952=/tmp/go-build -gno-record-gcc-switches -fno-common"

最佳答案

该变量名为GO111MODULE(带有字母O),而不是G0111MODULE(带有数字0)。

关于go - 使用go.mod在目录中将软件包安装到GOPATH,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58137092/

相关文章:

go - 如何将不遵守主要子文件夹约定的 Go 包的 v2.0.0 作为模块引用

git - 去使用 ssh 而不是 https(不在 github 上)

python - 直接调用与 Python 子进程时 GOPATH 的解释不同

macos - GOPATH 没有被自动设置?

mongodb - 在Go中删除MongoDB中的数组元素

go - 如何实现单例

go - 使用模块在 go 中进行版本化导入失败

json - (un)编码json golang不起作用

go - Context.Value(key interface{}) interface{} 是如何工作的?

go - $GOPATH 背后的编程范式是什么,它有什么作用?