如何使用Golang安装第三方库_使用go get和go install下载包
发布时间 - 2026-01-05 00:00:00 点击率:次go get用于下载并安装依赖库,更新go.mod;go install用于构建并安装可执行命令到$GOBIN。二者用途不同,不可混用,Go 1.18+后go get不再隐式安装命令。
在 Go 中安装第三方库主要通过 go get 命令完成,go install 则用于安装可执行命令(即带有 main 函数的程序)。两者用途不同,不能混用。
go get:下载并安装依赖包(含编译进当前项目)
go get 会下载指定模块、解析依赖、构建并将其添加到当前项目的 go.mod 文件中(Go 1.11+ 默认启用模块模式)。它默认只下载源码并更新依赖记录,不生成可执行文件。
- 安装一个库(如
github.com/spf13/cobra):go get github.com/spf13/cobra - 安装特定版本:
go get github.com/spf13/cobra@v1.8.0 - 安装最新主版本(如 v2+)需带版本后缀:
go get github.com/gorilla/mux@v1.8.5 - 如果项目启用了 Go Modules,
go get会自动写入go.m和
odgo.sum;若未启用,建议先运行go mod init your-module-name
go install:安装可执行命令(不修改当前项目依赖)
go install 从远程仓库下载指定包,并仅构建其中的 main 包,将生成的二进制文件放入 $GOBIN(默认为 $GOPATH/bin),供终端直接调用。它不会影响当前项目的 go.mod。
- 安装命令行工具(如
golang.org/x/tools/cmd/goimports):go install golang.org/x/tools/cmd/goimports@latest - 必须指定版本(Go 1.17+ 强制要求),常用
@latest或@v0.12.0 - 确保
$GOBIN在系统PATH中,否则无法在终端直接运行该命令
常见问题与注意事项
Go 1.18+ 默认使用模块模式,且 go get 不再支持隐式安装可执行文件(即不再等价于旧版 go install)。以下操作容易出错:
立即学习“go语言免费学习笔记(深入)”;
-
误用 go get 安装命令工具:例如
go get golang.org/x/tools/cmd/gopls在新版本中只会下载源码,不会生成可执行文件,应改用go install -
版本不明确导致拉取错误分支:不加
@version可能拉取master分支(已弃用),推荐显式指定@latest或语义化版本 -
代理设置影响下载:国内用户常因网络问题失败,可配置 GOPROXY:
go env -w GOPROXY=https://goproxy.cn,direct
验证是否安装成功
检查依赖是否写入模块:go list -m all | grep package-name
检查命令是否可用:which goimports 或 goimports -h
查看已安装的命令列表:ls $GOBIN(或 go env GOBIN 确认路径)
# git
# go
# github
# golang
# 工具
# ai
# proxy
# 常见问题
# 网络问题
# https
# 可执行
# 可执行文件
# 下载并安装
# 隐式
# 只会
# 第三方
# 不加
# 新版本
# 命令行
# 旧版
相关栏目:
【
网站优化151355 】
【
网络推广146373 】
【
网络技术251813 】
【
AI营销90571 】
相关推荐:
如何在IIS服务器上快速部署高效网站?
Chrome浏览器标签页分组怎么用_谷歌浏览器整理标签页技巧【效率】
Laravel怎么发送邮件_Laravel Mail类SMTP配置教程
ChatGPT怎么生成Excel公式_ChatGPT公式生成方法【指南】
Laravel怎么创建控制器Controller_Laravel路由绑定与控制器逻辑编写【指南】
Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】
BootStrap整体框架之基础布局组件
php在windows下怎么调试_phpwindows环境调试操作说明【操作】
Laravel如何安装使用Debugbar工具栏_Laravel性能调试与SQL监控插件【步骤】
邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?
美食网站链接制作教程视频,哪个教做美食的网站比较专业点?
如何快速搭建自助建站会员专属系统?
Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试
如何在HTML表单中获取用户输入并用JavaScript动态控制复利计算循环
在线制作视频网站免费,都有哪些好的动漫网站?
PHP 实现电台节目表的智能时间匹配与今日/明日轮播逻辑
jQuery validate插件功能与用法详解
,怎么在广州志愿者网站注册?
移动端手机网站制作软件,掌上时代,移动端网站的谷歌SEO该如何做?
高端云建站费用究竟需要多少预算?
Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面
Laravel如何实现API速率限制?(Rate Limiting教程)
Laravel如何部署到服务器_线上部署Laravel项目的完整流程与步骤
Python文件流缓冲机制_IO性能解析【教程】
Laravel如何使用Guzzle调用外部接口_Laravel发起HTTP请求与JSON数据解析【详解】
Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】
laravel怎么为应用开启和关闭维护模式_laravel应用维护模式开启与关闭方法
如何有效防御Web建站篡改攻击?
如何在万网开始建站?分步指南解析
Laravel API路由如何设计_Laravel构建RESTful API的路由最佳实践
如何用5美元大硬盘VPS安全高效搭建个人网站?
如何在建站之星绑定自定义域名?
如何利用DOS批处理实现定时关机操作详解
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
专业商城网站制作公司有哪些,pi商城官网是哪个?
Linux安全能力提升路径_长期防护思维说明【指导】
zabbix利用python脚本发送报警邮件的方法
在centOS 7安装mysql 5.7的详细教程
Laravel怎么解决跨域问题_Laravel配置CORS跨域访问
Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程
如何快速选择适合个人网站的云服务器配置?
创业网站制作流程,创业网站可靠吗?
如何在云主机上快速搭建网站?
Microsoft Edge如何解决网页加载问题 Edge浏览器加载问题修复
瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口
UC浏览器如何设置启动页 UC浏览器启动页设置方法
HTML透明颜色代码在Angular里怎么设置_Angular透明颜色使用指南【详解】
武汉网站设计制作公司,武汉有哪些比较大的同城网站或论坛,就是里面都是武汉人的?
今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】
php做exe能调用系统命令吗_执行cmd指令实现方式【详解】


od