直接在 Go 中使用二进制包
分发 Go 库的一个常见要求是不提供源代码。然而,这提出了一个挑战,因为 Go 构建过程通常需要访问源文件。
在传统设置中,工作区 1(“WS1”)包含库源,工作区 2(“WS2”)包含使用该库的主要函数。从 WS1 中删除源代码后,构建失败并显示错误,指示找不到“lib”包。这表明单独预编译的二进制包不能直接在 Go 中使用。
为什么单独的二进制包不够用
Go 编译器需要访问二进制包(. a) 和相应的源文件有几个原因:
使用二进制包的解决方案源
尽管存在这些限制,但仍有一些解决方案允许在没有源代码的情况下部署库:
分发的好处源代码
虽然可以在没有源代码的情况下分发 Go 库,但这样做有几个好处:
以上是Go项目可以使用没有源代码的预编译二进制包吗?的详细内容。更多信息请关注PHP中文网其他相关文章!