gpt4 book ai didi

go - 递归编译文件

转载 作者:IT王子 更新时间:2023-10-29 00:48:17 25 4
gpt4 key购买 nike

我刚开始使用 Go,我喜欢它!我试图使我的项目结构更易于管理,而不是将所有内容都放在我的 main.go 中

所以现在我有了这样的结构。

src/
-> main.go
-> routes.go
-> handlers/
--> user_handlers.go

但是当我尝试使用以下命令构建它时

go build -v -o ./bin/my_bin ./src/...

我收到这个错误

cannot use -o with multiple packages

但是如果我把它做成这样的平面结构

src/
-> main.go
-> routes.go
-> user_handlers.go

它工作得很好,我所有的文件的顶部都有“package main”。

我做错了什么?

最佳答案

包名必须与目录名匹配。将源文件移动到新目录还需要更改包名称。

foo/foo.go // package foo
foo/bar/bar.go // package bar
foo/bar/qux.go // package bar

PATH 与包名称无关。

Package foo: /some/path/some/where/foo 

这允许创建和导入多个“foo”包,前提是您的导入指定了“foo”的所需位置

附言包名称的约定是小写,没有标点符号(例如,没有 _'s)

关于go - 递归编译文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26095423/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com