如何在Go模块中忽略指定的.go源代码文件
Go模块下忽略指定.go文件的官方惯用法
Go语言原生提供了标准方案处理这类需求,不需要移动文件或修改原有文件名,最符合社区惯用法的是使用构建约束(构建标签):
- 操作方式:在需要忽略的
.go文件的最顶部(package声明之前,和package语句之间留一个空行),添加如下注释:
如果需要兼容Go 1.16及更早版本,可以同时加新旧两种格式的约束://go:build ignore//go:build ignore // +build ignore - 原理:这个特殊的构建标签会告诉Go工具链,任何场景下都不会将该文件纳入常规编译范围,自然也不会触发编译报错。
- 优势:
- 不需要改动文件的原有名称和存储位置,后续需要恢复编译时只要删除这行注释即可,操作成本极低
- 是Go官方标准特性,不会引入任何额外副作用
- 注意事项:
- 构建约束必须写在
package声明之前,不能放在文件中间或末尾,否则不会生效 - 如果你后续需要临时运行这个被忽略的文件,直接执行
go run 你的文件名.go即可,单独指定文件运行时不受ignore构建标签的限制
- 构建约束必须写在
内容的提问来源于stack exchange,提问作者WoJ
相关产品推荐
相关产品推荐

