大牛玩python 2025-02-22 08:45 采纳率: 50%
浏览 26
已结题

Buildozer打包错误

我在ubuntu22.04LTS版本虚拟机用Buildozer打包,今天我一个程序里面有json和os库,打包时就出问题了

img


首先提示在recipe中无json,os等模块,pip会自动安装

img


这张图片显示正在安装其他模块

img

这弹出了这个提示,说将要用pip安装json和os模块

img


这显示开始安装

img


接着就报错了

众所周知,python的内置模块是无法用pip安装的,安装python时自带的,但是为什么它提示缺这两个内置模块?
我检查了系统中两个版本的python3.9.12 和3.10.12文件夹,其中都有这些模块文件,那么打包时为什么会缺?
这怎么办呢?

附录:我的spec文件

img

  • 写回答

4条回答 默认 最新

  • 道友老李 JWE233286一种基于机器视觉的水表指针读数识别及修正的方法 专利发明者 2025-02-22 09:05
    关注
    让【道友老李】来帮你解答,本回答参考gpt编写,并整理提供,如果还有疑问可以点击头像关注私信或评论。
    如果答案让您满意,请采纳、关注,非常感谢!
    根据你的描述,问题可能是由于Buildozer在打包过程中可能无法正确识别json和os为Python内置模块而尝试使用pip安装导致的。这种情况下,你可以尝试在spec文件中手动添加这些内置模块,告诉Buildozer它们是内置模块,不需要额外安装。 你可以在spec文件中添加`requirements`字段,指定需要使用的Python包,同时指定`exclude_modules`字段来排除特定名称的模块,如下所示:
    requirements = python3, kivy
    exclude_modules = os,json
    

    这样Buildozer在打包时就不会尝试安装os和json模块了。 如果你对Buildozer进行了自定义配置文件,建议检查一下是否有类似的设置导致了这个问题。 另外,你也可以尝试升级Buildozer和相关的依赖版本,可能会修复一些已知的bug或问题。 最后,如果问题依然存在,你也可以尝试联系Buildozer的开发者或在相关的社区寻求帮助。祝你尽快解决问题!

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 3月4日
  • 已采纳回答 2月24日
  • 创建了问题 2月22日