在Debian上折腾Go语言项目,依赖管理这块其实不用太纠结。从Go 1.11开始,官方自带的Go Modules已经足够好用,而且跟系统环境配合得挺顺畅。下面直接说具体怎么做。
- 安装Go——先确认系统里有没有装好。如果还没装,打开终端跑两行命令就行:
sudo apt-get update
sudo apt-get install golang-go
- 环境变量别搞错——GOROOT和GOPATH得设对。GOROOT一般是Go的安装路径,GOPATH则是你自己的工作空间。建议在
~/.bashrc或~/.profile里加上这几行:
export GOROOT=/usr/lib/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
改完之后别忘了执行 source ~/.bashrc 或 source ~/.profile,让配置立即生效。
- 用Go Modules来管依赖——这是目前最推荐的方式,从Go 1.11开始就内置了,简单可靠。具体分几步:
a. 初始化一个新项目。在你的工作区里新建一个目录,进去之后运行 go mod init <模块名>,模块名通常就是项目的导入路径。
b. 写代码的时候正常用 import 引入其他包。当你执行 go build 或 go run 时,Go会自动下载并解析依赖,所有依赖信息都会记录到 go.mod 文件里,不用手动折腾。
c. 想更新依赖?用 go get 命令。比如 go get -u ./... 会把所有依赖更新到最新版;如果只想更新某个特定包,写成 go get -u <依赖的导入路径> 就行。
d. 想看看当前项目到底依赖了哪些包、什么版本?运行 go list -m all,一目了然。
整个流程走下来,你会发现Go Modules其实比想象中更省心——它天然支持版本控制、可重复构建,而且跟Debian的包管理互不干扰。这才是现代Go项目该有的依赖管理方式。