环境变量 GOPATH 是固定的,是否意味着代码库必须在指定路径下编写?

2021-07-08 09:57:42 +08:00
 429463267

如题,我的 go 环境如图:

GOPATH=D:_code\kl-go\GOPROJECT

GOPATH 是固定的,于是我的项目代码就必须在这里:D:_code\kl-go\GOPROJECT\src

可是我想在磁盘任意路径存放我的 go 代码,那我该如何动态维护 GOPATH 变量?

我尝试过在 global GOPATH 以外的路径存放代码,然后 IDEA 修改 project GOPATH,发现无效,某些导包会报错。

也就是上图标记 2 中添加自定义路径,然后关掉标记 3,但是这样做不生效。

2215 次点击
所在节点    Go 编程语言
17 条回复
Carseason
2021-07-08 10:00:09 +08:00
gomod
Vegetable
2021-07-08 10:02:33 +08:00
我看了一下发帖时间:2 分钟前。
兄弟,2021 年了,你说这个问题一般是在两年前问的,现在大家都用 go mod,这个放哪都行
maemual
2021-07-08 10:02:46 +08:00
go mod 之前的时候确实是代码得放在 GOPATH 下。用了 go mod 之后就不需要了。
thet
2021-07-08 10:06:21 +08:00
看看 go mod 怎么用吧
huihuiHK
2021-07-08 10:10:39 +08:00
go mod
xarthur
2021-07-08 10:16:59 +08:00
以前是,现在有了 Go mod 就无所谓了。
ScepterZ
2021-07-08 10:19:33 +08:00
找个 go mod 的教程看,你这个是之前的做法了,马上就不支持了
keepeye
2021-07-08 10:21:57 +08:00
go mod 之后,不用了。某种程度 GOPATH 可以看成是全局依赖所在位置
429463267
2021-07-08 10:36:23 +08:00
JKeita
2021-07-08 10:36:38 +08:00
go mod 不用
mengdodo
2021-07-08 10:38:30 +08:00
111
Marmot
2021-07-08 16:20:22 +08:00
就是因为这个,所以有了 go mod 现在方便多了
DefoliationM
2021-07-08 18:47:01 +08:00
大清亡了?
jasonkayzk
2021-07-09 08:31:32 +08:00
GOPATH 早就凉了,可有可无。
chaodada
2021-07-09 10:16:30 +08:00
go mod 简直不要太方便
eudore
2021-07-12 09:03:45 +08:00
gopath 可以配置多个目录,第一个目录放依赖,第二个目录作为 worksapces 。

gomod 解决了多版本和 goproxy,但是也引入了些新问题。
nmap
2021-07-13 15:59:57 +08:00
有 go mod 后,GOPATH 还保留着,应该是为了存放 mod 下载的那些 pkg

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

https://www.v2ex.com/t/788226

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

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

© 2021 V2EX