go mod vendor测试

go mod可以使项目从GOPATH的强制依赖中独立出来,也就是说你的项目依赖不再需要放在在GOPATH下面了,每个工程的依赖包、版本可由当前工程独立管理!

mod操作记录

  1. export GO111MODULE=on

  2. go mod init github.com/mutex73/ga

    可以手动增加依赖go.uber.org/atomic v1.4.0或者让go自动发现和维护,下面build中会自动发现依赖包

  3. go build src/practice/mod/vendor_test.go

    vendor_test.go文件中增加了import "go.uber.org/zap"的语句,IDE提示报错,执行build后依赖包记录在go.mod中

    module github.com/mutex73/ga
    
    go 1.12
    
    require (
        go.uber.org/atomic v1.4.0 // indirect
    	go.uber.org/multierr v1.1.0 // indirect
        go.uber.org/zap v1.10.0
    )
    
  4. go mod download

    依赖包会自动下载到$GOPATH/pkg/mod,多个项目可以共享缓存的mod
    go mod vendor测试_第1张图片

  5. go mod vendor

    从mod中拷贝到项目的vendor目录下,这样IDE就可以识别了!

你可能感兴趣的:(lang)