如何在linux平台上编译一个包含多个包和文件的go项目以获得一个可执行文件?
例如,我有一个具有以下结构的项目:如何在linux平台上编译一个包含多个包和文件的go项目以获得一个可执行文件?,go,compilation,Go,Compilation,例如,我有一个具有以下结构的项目: hello - packageA - subDirA - Afile1.go - Afile2.go - packageB - Bfile.go - Bfile2.go - packageC - main.go - subdirC - xx.json - packageD -xx.
hello
- packageA
- subDirA
- Afile1.go
- Afile2.go
- packageB
- Bfile.go
- Bfile2.go
- packageC
- main.go
- subdirC
- xx.json
- packageD
-xx.go
如何在Linux平台上构建它们并获取可执行文件xxx,这样我就可以通过./xxxx直接调用它们?简短回答:开始构建
您可以运行go help build来了解有关如何使用它的更多信息。例如,您可能希望提供一个特定的路径来进行构建,或者使用。/。。。。这取决于项目的确切布局
我强烈建议您先阅读一些官方Go文档页面:
完成这些页面和其他页面中的示例;这将回答您的大部分问题。第二个链接特别谈到如何正确使用go build和go install来构建您的项目。为什么不进行构建?为了方便起见:@Volker我使用go build hello,但它抛出了一个错误:xxx/hello中没有go文件。在主包所在的位置进行go build。以及Do go build不进行任何构建。但最好的建议是:阅读文档和教程,试着理解什么是包,什么是主包,什么是模块。