我正在开始Golang开发。现在,我的老板给了我其他开发人员创建的项目的资料库,现在他离开了公司,我无法问他一些与此有关的事情。现在我对他推到仓库的项目结构感到困惑,下一个是:
|-MyApp
|--bin
|--pkg
|--src
|----api (the code of the app)
|----github.com
|----golang.org
|----gopkg.in
对我来说,这很简单,因为Go的结构1.-在回购中不仅应该是api文件夹?
如果我转到api文件夹并输入
go run main.go
,则会收到一条消息,提示即使在文件夹中也找不到某些软件包,2.如何在go run命令中指定软件包?3.-为golang项目设置这种结构是一种好习惯吗?我在代码中看到他仅使用“package1”导出软件包,如果我将应用程序的代码复制并粘贴到golang工作空间中,则必须指定要导出软件包的文件夹名称,例如:“myApp / package1”,因此我对此表示怀疑。谢谢
最佳答案
一切取决于。一切都没有唯一正确的方法。
好像这个仓库决定提供所有东西,整个GOPATH。没关系,但是今天有了“现代” vendor
文件夹,可能会有所不同。
永远不要go run
。那仅用于玩具程序。使用go build
和go install
构建软件。这些命令在程序包路径上工作。
对于其他所有内容:请参阅官方文档https://golang.org/doc/code.html并坚持使用(这意味着您应该稍微移动一下内容)。
关于go - 正确的Golang储存库结构,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44737505/