go构建是否包含二进制格式的非go文件?

go构建是否包含二进制格式的非go文件?,go,Go,go build是否包含代码中使用的其他支持文件,并随exe一起提供? 例如: 当我们开始构建时,inpdata.txt文件也会被发布吗? 如果这些支持文件被排除在外,它们如何从外部文件获取输入值 我正在尝试使用Golang为win OS构建一个二进制exe文件。 阅读一些文档后,可以清楚地了解生成win OS exe文件的go build命令忽略了_test.go文件和所有tesdata文件夹。 在文档中也提到,这仅适用于非源文件 go构建是否包含二进制格式的非go文件 默认情况下,否:您需要

go build是否包含代码中使用的其他支持文件,并随exe一起提供? 例如:

当我们开始构建时,inpdata.txt文件也会被发布吗? 如果这些支持文件被排除在外,它们如何从外部文件获取输入值

我正在尝试使用Golang为win OS构建一个二进制exe文件。 阅读一些文档后,可以清楚地了解生成win OS exe文件的go build命令忽略了_test.go文件和所有tesdata文件夹。 在文档中也提到,这仅适用于非源文件

go构建是否包含二进制格式的非go文件

默认情况下,否:您需要嵌入它们

有几种方法:

从非go资源生成go文件 使用go生成 使用代码声明 定义虚拟内存文件系统。 在您的示例中,inpdata.txt不包含在输出二进制文件中。假设程序通过ioutil.ReadAll./inpdata.txt读取inpdata.txt,当二进制文件运行时,程序将实际查找/inputdata.txt。通常是运行程序的地方。因此,您需要确保inputdata.txt位于二进制文件旁边。
--> input.go - contains go code to read input from text file
--> inpdata.txt