我正在寻找与 python 世界中的 uber-jar 相当的东西。
- 我需要将 python 包分发到所有三个主要平台(Windows、Mac、Linux)。
- 它必须与其所有依赖项捆绑在一起,因为目标平台可能缺乏互联网。
它必须是一个跨平台的发行版,所以我不必为多个目标构建。也就是说,我应该能够在这样的所有平台上运行它:
python package.ext
您可以假设该包是纯 python(没有本机代码)。 有什么东西可以满足这些要求吗?
我知道以下选项,每个选项都有缺陷:
.whl
软件包需要pip
安装。- 我不知道如何创建一个
.egg
包含所有包依赖项。 - 此 PEP: http: //legacy.python.org/dev/peps/pep-0441表明 python 支持运行
.zip
文件,但 AFAICT,创建此类 zip 的最佳工具是 pex(https://github.com/pantsbuild /pex ),我认为它不支持 Windows