gomod

go mod 后,安装默认都只会进入第一个 GOPATH
go env -w GOPROXY=https://goproxy.cn,direct
export GOPROXY=https://goproxy.cn,direct
再次查看GOPATH
发现多了pkg文件夹,查看该文件夹,此时pkg/mod就是缓存的依赖。

$ls pkg/
darwin_amd64 mod sumdb



$ls pkg/mod/
cache go.uber.org google.golang.org honnef.co
github.com golang.org gopkg.in



$cat goLang.iml
<?xml version=”1.0” encoding=”UTF-8”?>














go run ./…
build github.com/xiazemin/graphql/exp1: cannot load github.com/graphql-go/graphql: module github.com/graphql-go/graphql: Get https://proxy.golang.org/github.com/graphql-go/graphql/@v/list: dial tcp 172.217.160.81:443: i/o timeout



如果使用GoLand开发工具



Settings–Go–Go Modules(vgo)中:



开启Go Modules继承,
配置代理:https://goproxy.io,direct



默认使用 github.com/zhouzme/snail-go 包会到 github 上去下载,但这个包还在本地开发中并未push到线上,那么可以通过 replace 配置来重定向当前项目对该包的加载路径:



replace github.com/zhouzme/snail-go => E:\Go\snail-go



这里 E:\Go\snail-go 为本地包的绝对路径,这样写就可以了,当本地snail-go包代码修改后就可以在当前项目看到实时效果了,注意中间符号是 =>



go mod init



module github.com/xiazemin/graphql/exp1



go 1.13



replace github.com/graphql-go/graphql => /Users/didi/goLang/pkg/mod/github.com/graphql-go/graphql@v0.7.9



Category golang