作为一个python/django世界的开发者,我希望有类似于go/revel的requirements.txt的东西。我该如何做到这一点?我知道我可以编写一个requirements.txt文件,然后执行类似于
cat requirements | xargs go get
但是如果我的要求也有要求怎么办?上述命令会尝试“获取”它们,然后由于我没有安装这些要求,它们将无法构建。
我是否遗漏了什么?
go get
正是您所需的:它查找所有依赖项并下载和安装缺少的依赖。重点在于“所有”: go get
确实遍历了您的依赖关系图。https://golang.org/cmd/go/#hdr-Add_dependencies_to_current_module_and_install_them
Go文档非常清晰、简洁、易于理解。我建议在做出基于其他工具或工具链经验的假设之前,始终先查看文档。go
,所以无法用这些术语向您解释。但通常现代软件需要一些额外的包,例如,您的程序可能会解析yaml文件。然后您需要go-yaml库的3.1.5版本。如果您从未将其写下来,我怀疑go get
无法找到它。开发人员和用户之间的区别主要在于稳定性。开发人员可以使用3.4.5版本而不是3.1.5版本,因为它包含所有新功能,但可能会出现故障。尽管如此,用户仍会在最新版本中获得3.1.5版本,因为它不太容易出现故障。 - erikbstackgo get
无关。 - Volker
go get
应该会获取每个包所需的所有依赖项,您不需要指定它们。尝试一下并查看它是否符合您的要求。 - Intermernet