目前 golang 环境的正确搭建姿势是什么?

151 天前
 junwind

为什么我看到还有很多教程都是基于 gopath 的, 一上来就是配置 goroot ,gopath ,创建固定的目录 pkg ,src ,。。。

大家一般的 go 开发环境怎么搭建呢。项目中的依赖是怎么处理呢?

5352 次点击
所在节点    Go 编程语言
52 条回复
EricYuan1
151 天前
cy
securityCoding
151 天前
NX2023
151 天前
靠 GoLand 自己管理,本地不用手动装,直接 GoLand 里面下
cyrivlclth
151 天前
你的教程是不是太老了?一般 goland ,没有 goland 也是装好 go 之后直接 mkdir 一个文件夹,然后这个文件夹就是你的项目路径了,go mod init 一下不就行了。。。
ym1ng
151 天前
go mod
seth19960929
151 天前
1. 安装 golang (放入环境变量)
2. 用 gomod, 抛弃所有 goroot, gopath, 已经没人用了(pkg, src)
ninjashixuan
151 天前
go path 怕不是好多年前的教程了。
junwind
151 天前
@seth19960929 谢谢,可能是有些教程比较老吧,总是要扯什么 gopath 要配置,要按格式创建目录。
clino
151 天前
有个 goenv ,和 Python 的 pyenv 类似,可以用这个切换不同的 go 版本
Trim21
151 天前
按照我的理解,golang 的想法是开发者不要自己管理工具链的版本,随便装一个足够新的 go (>= 1.21 ),然后让 go 自己根据对应项目的 go.mod 下载使用对应版本的工具链。
linuxsuren
151 天前
Goland 安装后啥都不用管,点点点。参与开源项目还能拿到免费的 License
https://github.com/LinuxSuRen/api-testing
pike0002
151 天前
建议可以的话:
1. 装 gvm ,便于多版本 go 管理,对于一些特性测试或者多项目的情况比较好。尤其适合要在不同版本间测试同一个特性不同版本间表现时,比如 go 的 for-range 变更。https://www.pixelstech.net/article/1732171804-fix-for-range-issue-again-in-go-1-22?lang=chinese
2. 项目建在哪不是很重要,建议项目用 go mod 管理,这样的话依赖管理也比较好搞。
pkoukk
151 天前
唯一指定包管理模式:go mod
(其实极少部分情况会用 go vendor)
8355
151 天前
@junwind 那都是 2015 年前后的事了。。。框架还是教 beego 是吧
IDAEngine
151 天前
golang 自带 go mod
tairan2006
151 天前
go mod init

一般用最新版 go 就行,除非你依赖了一些奇奇怪怪的库
NessajCN
151 天前
sudo pacman -S go 呗, 还要咋样

你在墙内就再加两句
go env -w GO111MODULE=on
go env -w GOPROXY=https://goproxy.cn,direct
THESDZ
151 天前
wentx
151 天前
brew install go

mkdir myfxckproject && cd myfxckproject
go mod init ...
ScepterZ
151 天前
安装之后 go env -w 那么几条就行了
主要是 goproxy 还有 1.21 之后的 toolchain ,1.21 之后也不需要上边说的 gvm 之类的了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1115694

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX