Go编译器只需要这些
.a文件。如果您运送它们,那么任何人都可以在没有源代码的情况下使用您的包裹。
但是 您的用户将必须手动调用编译器(例如
6g,不是
go工具)。如果您发运了一个
myfoo.a文件,
并且
myfoo.go其中包含的虚拟源仅包含,
packagemyfoo并且的时间戳
myfoo.a比的时间戳新
myfoo.go(并且将所有内容放置在适当的位置),则可以使用该
go工具。
更新 :较新版本的go工具可以检测已删除的文件,并要求src文件夹中具有正确文件名和较旧时间戳记的所有文件(可能为空)。管理时间戳不应该成为难题。
不要误以为该
go工具 是 Go:无论您使用什么Go代码,它都是一种构建,测试,获取的死掉的便捷工具,但它既不是语言,也不是编译器,也不是链接器。
顺便说一句:不分发资源真的没有意义。



