直接在 Go 中使用二进制包
在分发 Go 库时,许多开发人员希望保留源代码。然而,一个常见的误解是二进制包(.a 文件)可以单独分发。
Go 的二进制包使用限制
不幸的是,Go 的编译器需要访问源代码文件 .go),即使在分发二进制包时也是如此。这是因为:
替代方案方法
要在没有源代码的情况下分发库,您可以创建时间戳早于二进制包的虚拟源文件。这告诉编译器使用二进制包并忽略虚拟源。但是,不鼓励这种方法,因为它依赖于正确维护时间戳。
建议
如果可能,建议使用二进制包和源代码分发您的库代码。这允许用户轻松地将您的库构建到他们的项目中,而不会遇到任何问题。
Go 对仅二进制分发的立场
Go 并没有明确禁止仅分发二进制包。然而,编译器的要求使得有效地做到这一点变得困难。这可能是由于 Go 强调可维护性以及用户在使用库之前需要验证源代码。
以上是Go 库可以作为纯二进制包分发吗?的详细内容。更多信息请关注PHP中文网其他相关文章!