【发布时间】:2020-01-16 10:07:00
【问题描述】:
我有一个自定义库/包(比如my_utils),它有一些库依赖项,例如pandas、numpy、boto 等。我创建了wheel(my_utils.whl)相同,但不包括我上面提到的依赖项。所以当我安装my_utils.whl时,它会在线下载依赖。
我的要求是在没有互联网连接的服务器上安装my_utils.whl 文件。所以我想将所有依赖项与my_utils.whl 一起打包以创建final_my_utils.whl。
在我要上传此轮文件的服务器上,具有 GUI,并且只能使用 pip3 install final_my_utils.whl 安装轮文件
有什么方法可以实现吗?
编辑:感谢所有答案。但正如我所提到的,我要安装此软件包的服务器只有 GUI,我无法运行任何命令。在内部,它将运行pip3 install some_wheel.whl 文件。因此,我想要单个轮文件打包所有依赖项。
【问题讨论】:
-
“没有互联网连接”:如果我做对了,您需要将所有依赖项打包到您的可分发包中。我过去只尝试过pyinstaller.org。如果您的任何部门都是基于 C/C++ 或需要系统库(如 openssl)
-
您还可以查看 bazel (docs.bazel.build/versions/master/be/python.html) 和 buck (buck.build/rule/python_library.html#content) 作为替代构建和打包系统
-
正如我所提到的,我要安装此软件包的服务器只有 GUI,我无法运行任何命令。在内部,它将运行 pip3 install some_wheel.whl 文件。因此,我想要单个轮文件打包所有依赖项。
标签: python pip python-wheel