登录
首页 >  Golang >  Go问答

Go 模块:go 构建后覆盖了 main.go 文件

来源:stackoverflow

时间:2024-03-11 11:36:25 170浏览 收藏

在IT行业这个发展更新速度很快的行业,只有不停止的学习,才不会被行业所淘汰。如果你是Golang学习者,那么本文《Go 模块:go 构建后覆盖了 main.go 文件》就很适合你!本篇内容主要包括##content_title##,希望对大家的知识积累有所帮助,助力实战开发!

问题内容

我面临一个奇怪的问题,即在使用 go 模块供应我的依赖项后,go build 命令会使用随机数据覆盖 main.go 文件。

文件的开头如下所示:

����
H
H__PAGEZEROx__TEXTpxpx__text__TEXT��7�__rodata__TEXT��7Y��7__symbol_stub1__TEXT�V��V�__typelink__TEXT�V�(�V__itablink__TEXTP@V�
P@V__gosymtab__TEXT�JV�JV__gopclntab__TEXTKV
"KV�__DATApx�|px c
__nl_symbol_ptr__DATApx�pxs__noptrdata__DATA�sx���sx__data__DATA�&{���&{__bss__DATA �{��__noptrbss__DATA�}�2__DWARF�}�{��   __zdebug_abbrev__DWARF�}�{__zdebug_line__DWARF�}'W�{__zdebug_frame__DWARF;H���;8�__zdebug_pubname__DWARF�څ�K�ʃ__zdebug_pubtype__DWARF�&����__debug_gdb_scri__DWARF��6�ӄ__zdebug_info__DWARF���
�ӄ__zdebug_loc__DWARF䉑��y�__zdebug_ranges__DWARFU��ZE�H__LINKEDIT�}L���L��*�����,�r���Pu,u,x,xo�� /usr/lib/dyld8/usr/lib/libSystem.B.dylibh/System/Library/Frameworks/CoreFoundation.framework/Versions/A/CoreFoundation`/System/Library/Frameworks/Security.framework/Versions/A/Security$

� Go build ID: "OLftMbjtv5aWMkI_0qrD/LhWRtD0wcaKFWRYSDOa9/7dFWcNOQ4BpWWqZQW07D/pkR9ABiz-SHIBaJIZ1ur"
 ����������UH��AWAVATSH���=|I��

go版本:go版本go1.12.5 darwin/amd64

使用 export go111module=on 启用 go 模块

文件夹结构: go.mod go.sum log.go main.go 供应商

仅供参考:只有 main.go 被覆盖,log.go 没有被覆盖。

使用 go mod init 初始化 go 模块

使用 go modvendor 供应的应用程序

不确定我是否做错了什么。如有任何帮助,我们将不胜感激。


解决方案


模块名称不应该是 main.go,因为它是包内的文件。请使用您的项目名称作为 go mod init 中的模块名称。

例如,如果您的项目根目录是 hello,请将包命名为 hello,而不是 main.go。 另外,如果您想反复使用该模块,请考虑使用您的存储库名称作为模块名称。

Go 处理包而不是单个文件。 Go 模块用于组织包。了解更多请进入official documentation

到这里,我们也就讲完了《Go 模块:go 构建后覆盖了 main.go 文件》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>