golang包管理工具 godep

godep 就类似maven工具 用来管理我们项目中依赖的第三方go libs

使用

首先 安装godep

go get github.com/tools/godep

然后执行 godep restore 同步库

情况:1.可能包没有 embedmd包 那么可以使用go get 下载 ,如果慢,那么直接用 git clone  https://github.com/campoy/embedmd 

 情况 2.  godep: open Godeps\Godeps.json: The system cannot find the path specified.

 可能缺失很多包

以下在国内服务器需要做 因为被墙
但是在香港或者国外可能就执行按照godep就好了
RUN go get github.com/tools/godep \
    go get  github.com/campoy/embedmd \
    go get github.com/client9/misspell/cmd/misspell \
    go get github.com/dustin/go-broadcast \
    go get github.com/gin-gonic/autotls \
    go get github.com/jessevdk/go-assets \
    go get github.com/manucorporat/stats \
    go get github.com/thinkerou/favicon \
    go get github.com/golang/lint \
    go get github.com/grpc/grpc-go  \
    go get github.com/json-iterator/go \
   go get golang.org/x/sys/unix  \
    go get golang.org/x/crypto/acme/autocert \
   go get github.com/golang/crypto \
   go get github.com/golang/lint \
   go get github.com/grpc/grpc-go \
   go get github.com/pmezard/go-difflib \
   go get github.com/golang/sys \
   go get github.com/golang/tools \
   go get  github.com/google/go-genproto

如果由的包找不到了 ,可以到github.com 上.golang.org在github.com上面有一个备份镜像。

有的包需要手动下载后,放到相应的目录下面。 

https://github.com/golang/crypto 

https://github.com/golang/lint

git.exe clone --progress -v "https://github.com/grpc/grpc-go" "D:\install\GoPath\src\google.golang.org\grpc"

github.com/pmezard/go-difflib

https://github.com/golang/sys

https://github.com/golang/tools

https://github.com/google/go-genproto

golang中找不到的  直接到 github.com/golang    同样  github.com/google中去下载。

执行godep save后 ,项目会生成vendor 和 Godeps

godep save

将项目中使用到的第三方库复制到项目的Godeps目录下

godep restore

如果下载的项目中只有Godeps.json文件,而没有包含第三库则可以使用godep restore这个命令将所有的依赖库下来下来到GOPATH的src中。

godep go build

要编译和运行项目的时候再用go run和go build显然就不行了,因为go命令是直接到GOPATH目录下去找第三方库。 而使用godep下载的依赖库放到Godeps/workspace目录下的

参考: http://www.cnblogs.com/me115/p/5528463.html#h20

Go官方依赖包管理工具dep的安装及使用

可以通过下面命令去安装。 
go get -u github.com/golang/dep/cmd/dep

我使用的是破解的dep,进入自己的工程目录,然后执行go get -u github.com/golang/dep/cmd/dep命令。安装完成后,输入命令dep检测是否安装成功,如果出现下图所示,则安装成功。 
 

安装成功后,执行命令dep init对你的项目进行初始化。这时有可能会出现下面所示错误:init failed:unable to detect the containing GOPATH: D:\go_project\test is not within a known GOPATH/src。 
之所以出现这个原因是因为你的工程路径不符合dep初始化工程的路径,因此,你可以将你的工程放到你本机的GOPATH/src目录下,然后执行dep init。 
执行成功后会在你的项目目录中,生成三个文件,分别是:Gopkg.lock,Gopkg.toml和vendor文件夹。
 

如果 项目repo不存在了 ,可以手动下载到   pkg\dep\sources 

如: http---go.uber.org-dig.git

 如果依赖本地项目。  使用 replace 转发,就会直接访问本地路径下的项目。 这样就可以边调试 边修改 边引用,最后再提交了。不用每次修改项目后,提交 再下载测试了

require (
gitee.com/ifinder/mengine v0.0.0
)
replace gitee.com/ifinder/mengine => e:\ws\gows\mengine

再一个IDEA中调试另一个项目代码, 可以使用Project Struct => Module => Import 即可,当然在 go module 包强制编辑调试也可以,不过比较麻烦

参考:https://studygolang.com/articles/12511

发布了211 篇原创文章 · 获赞 29 · 访问量 36万+

猜你喜欢

转载自blog.csdn.net/wuhualong1314/article/details/85236998