首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >这个命令做什么'GOFLAGS=-mod=mod'?

这个命令做什么'GOFLAGS=-mod=mod'?
EN

Stack Overflow用户
提问于 2022-02-15 05:49:31
回答 1查看 2.3K关注 0票数 2

我正在尝试创建一个构建go应用程序的Taskfile.yml文件,但在构建main.go之前,我无法完全理解"GOFLAGS=-mod=mod“命令的需求。

参考资料:https://dev.to/aurelievache/learning-go-by-examples-part-3-create-a-cli-app-in-go-1h43

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-02-22 23:42:25

所以这里有两件事

  • GOFLAGS
    • 这只不过是一个环境变量(如果您不了解环境变量是什么,就把它看作是当前环境中任何进程都可以访问的值。这些值由操作系统维护)。
    • 因此,这个GOFLAGS变量有一个空格分隔的标志列表,这些标志将自动传递给适当的go命令。
    • 我们在这里设置的标志是mod,此标志适用于go build命令,可能不适用于其他go命令。
    • 如果您好奇go是如何做到这一点的,请参阅此更改请求

  • 设置-mod=mod标志,在go build期间实际做什么?
    • -mod标志控制是否可以自动更新go.mod,以及是否使用供应商目录。
    • -mod=mod告诉go命令忽略供应商目录,并自动更新go.mod,例如,当任何已知模块没有提供导入的包时。
    • 请参阅此

因此

代码语言:javascript
复制
GOFLAGS="-mod=mod" go build main.go

等于

代码语言:javascript
复制
go build -mod=mod main.go
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71121641

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档