GO专栏 (二) ——— GoLand和Dep管理工具最佳实践

GoLand和Dep管理工具最佳实践

@author 鲁伟林
作为一个从Java转过来的我,刚开始接触Go项目的项目管理工具,超级想念Java中的maven。
抱着既来之则安之的态度,记录下这篇博客。如有说错的地方,或更好的解决方案,请留言。
博客题目叫:GoLand和Dep管理工具最佳实践。鄙人敲打“最佳”两个字时,心中忐忑不安,但搜索并思考很久,觉得博客中方案个人认为的确不错。如有更好实践,请留言告知。

本博客中涉及的完整代码:
GitHub地址: https://github.com/thinkingfioa/go-learning
本人博客地址: https://blog.csdn.net/thinking_fioa
文中如若有任何错误,欢迎指出。个人邮箱: thinking_fioa@163.com

GOROOT和GOPATH环境变量解释

GOROOT和GOPATH都是GO语言需要的环境变量。可以通过命令go env来查看环境变量,输出如下:

GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/thinking/Library/Caches/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/thinking/go"
GORACE=""
GOROOT="/usr/local/Cellar/go/1.10.2/libexec"
GOTMPDIR=""
GOTOOLDIR="/usr/local/Cellar/go/1.10.2/libexec/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
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/qz/7v0twcvd1bqd6878v_pm_v040000gn/T/go-build056907507=/tmp/go-build -gno-record-gcc-switches -fno-common"

1. GOROOT

golang的安装目录,Go语言提供的底层库通过GOROOT环境变量查找

2. GOPATH

可以理解为Go语言的工作目录。鄙人使用GoLand编辑器,我一般喜欢通过GoLand配置,只配置Project GOPATH。将Project GOPATH配置成当前目录。

 

Dep 工具使用

dep目前仍然没有Java中maven好用,勉强可用于Go语言的依赖管理工具。dep与godep不是一个东西,dep是官方版本.

1. 查看版本

dep version ----- 查看dep工具版本和build日期等.

2. 初始化

使用命令: dep init初始化,需要在指定目录下: $GOPATH/src/${ProjectName}下调用。将会生成两个文件和一个目录,分别是:Gopkg.lock、Gopkg.toml和vendor,如下图。在GoLand下只配置Project GOPATH,再使用dep管理工具,可以根据项目将依赖包分开,避免多个项目之间冲突。

2.1 Gopkg.lock 解释

自动生成文件,不允许手动修改。

2.2 Gopkg.toml 解释

Go语言依赖管理的核心文件,可以手动修改。一般情况下Gopkg.toml里面只定义直接依赖项,而Gopkg.lock里面除了包含Gopkg.toml中的所有项之外,还包含传递依赖项。

2.3 目录vendor

依赖管理目录,这个目录的依赖代码优先加载。

3. 依赖管理

3.1 添加一条依赖

dep ensure -add github.com/muesli/cache2go。该指令会更新Gopkg.toml和Gopkg.lock并安装到依赖项至vendor/下。

3.2 添加一条依赖并指定某个tag

dep ensure -add github.com/muesli/cache2go@=0.1

3.3 添加后,确保同步

dep ensure -v ----- 参数-v可以帮助查看执行过程,建议加上

3.4 删除没有用到的 package

dep prune -v

3.5 依赖更新

dep ensure -update -v

3.6 查看依赖状态

dep status ----- 列出应用程序中使用的版本和开发人员发布的最新版本

3.7 删除依赖

修改Gopkg.toml文件内容,保证代码中没有被引用,然后执行dep ensure

创建一个GoLand项目

第一步 创建工程项目名

新建一个Directory,作为工程项目名字 

第二步 创建目录结构

建立Go语言工程项目通用的目录结构: bin、pkg和src。

 

第三步 创建子项目名称

在src目录下,建立你的项目名称,如上图中的concurrentcache项目名

第四步 配置Project GOPATH

使用GoLand软件,我通常只配置Project GOPATH,再使用dep管理工具,这样每个工程项目都有自己的依赖包,避免多个工程项目之间冲突。

第四步

通过GoLand的Terminal控制台,进入到src/${ProjectName}下,调用dep init,生成项目依赖文件Gopkg.lock、Gopkg.toml和vendor目录。则大功告成。

参考

  1. go之官方依赖管理工具dep安装和使用
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
当然可以为您提供关于在 Windows 10 下安装 Go 和 Goland 的详细教程。以下是步骤: 1. 安装 Go: - 访问 Go 官方网站 https://golang.org/dl/ 并下载适用于 Windows 的 Go 安装程序(.msi文件)。 - 双击下载的安装程序,按照指示完成安装。 - 打开命令提示符或 PowerShell,输入 `go version`,如果显示了 Go 的版本信息,则说明安装成功。 2. 安装 Goland: - 访问 JetBrains 官方网站 https://www.jetbrains.com/go/download/ 并下载 Goland 的适用于 Windows 的安装程序。 - 双击下载的安装程序,按照指示完成安装。 - 打开 Goland,选择“Do not import settings”(不导入设置),然后点击“OK”。 - 在“Welcome to Goland”(欢迎使用 Goland)页面上,选择“Skip Remaining and Set Defaults”(跳过并设置默认值)。 - 在左上角的菜单中,选择“File”(文件)> “Settings”(设置)打开设置面板。 - 在设置面板中,选择“Go”(Golang)> “GOROOT”,点击“+”按钮添加 Go 的安装路径。通常情况下,Go 的安装路径为 `C:\Go`。 - 在设置面板中,选择“Go”(Golang)> “GOPATH”,点击“+”按钮添加一个项目路径。这将是您的 Go 项目的根目录。 - 点击“Apply”(应用)并关闭设置面板。 现在您已经成功安装了 Go 和 Goland。您可以使用 Goland 来编写和运行 Go 代码了。希望对您有所帮助!如果您有任何其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值