首页 > 解决方案 > 将大型 JAR 二进制文件的 python 包装器打包到 PyPi

问题描述

我已经为一些 JAR 二进制文件构建了一个 python 包装器,我想将它分发给 PyPi。问题是这些 JAR 的大小非常大。它们超过了 60MB 的 PyPi 限制大小(当前大小约为 200MB 或更多)。在这种情况下,包装的最佳做法是什么?我有以下想法,但不知道是否有更好的做法。

我会将这些二进制文件保存在某处,并在包装​​代码中或在安装步骤中使用主初始化函数中的脚本下载它们。这个解决方案似乎很好,但你能推荐一个好的存储库来保存这些二进制文件吗?我可能会推荐 DropBox 和 Google Drive,但我觉得它们不适合这种情况!

顺便问一下,是否可以在安装步骤中下载文件?

谢谢你的帮助,

标签: pythonpackagingpypi

解决方案


您走在正确的轨道上,将依赖项从包中移出并在安装/首次使用时下载它们(只需确保包含某种进度指示器,以便人们知道发生了什么,因为依赖项可能需要几分钟要下载那么大,您不希望他们认为它挂起。

我会避免使用 Dropbox 或 Google Drive(尤其是 Drive)之类的东西,因为它们作为下载镜像的速度非常慢。相反,请尝试AWS S3Google Cloud Storage之类的东西。如果您想在区域内改善延迟,也可以将 CloudFront 作为 CDN包裹起来。

希望这可以帮助!


推荐阅读