Twelve-Factor App宣言说,它是为web应用程序“...有一个干净的合同与底层操作系统,提供最大可移植性之间的执行环境”[强调加我]供应本地工具,同时保留最大的便携性
但随后it says:
十二因素还应用不依赖于任何 系统工具隐含的存在。例子包括脱壳到
ImageMagick
或curl
。 虽然这些工具可能存在于很多甚至大多数系统上,但是没有任何保证,它们将存在于未来可能运行该应用程序的所有系统上,或者未来系统上发现的版本将与 兼容应用程序。如果应用程序需要发布到系统 工具,那么该工具应该在应用程序中进行销售。
和他们早先定义“vendored到应用程序”为:
作用域到含有该应用(被称为“vendoring”或 “捆绑”)的目录。
当(至少在Linux上)本机64位可执行文件不在32位环境中运行时,应该如何完成此任务 - 更不用说其他操作系统了?还是有更好的方式来处理这个可移植性问题?
此外,他们似乎没有考虑过您可能在Windows上开发并希望执行“系统工具”的可能性。与其他许多EULA一样,Windows EULA也禁止出售。 –