为了账号安全,请及时绑定邮箱和手机立即绑定

如何禁用cx_freeze自动检测所有模块

如何禁用cx_freeze自动检测所有模块

开满天机 2021-03-06 15:11:39
cx_freeze构建包含我的计算机上安装的所有模块,因此冻结的构建变得非常庞大。如何禁用自动检测功能?我只想构建一个小的PyQt应用程序:import sysfrom cx_Freeze import setup, Executablepath = sys.path + ["app"]includes = ["app.core", "app.utils"]excludes = ["tcl"]build_exe_options = {"path": path,"icon": "resources\icons\clock.ico"}base = Noneif sys.platform == "win32":    base = "Win32GUI"setup(  name = "app",        version = "1.1",        description = "My Application",        options = {"build_exe": build_exe_options},        executables = [Executable("app.py", base=base,            targetName="app.exe",            shortcutName="Application",            shortcutDir="DesktopFolder")])另外我有我的自定义模块,每个模块都有一个utils子模块,因此cx_freeze放错了模块。如何设置我需要的严格模块清单?
查看完整描述

1 回答

?
眼眸繁星

TA贡献1873条经验 获得超9个赞

这很简单。此应用程序使用自定义模块,因此我已将应用程序文件夹添加到路径中:

path = sys.path + ["app"]

诀窍是应用程序使用模块“ utils”,而我的操作系统路径中还有其他“ utils”模块。其他“ utils”模块导入了很多东西,例如matplotlib,PIL等。因此,我通过更改如下路径环境解决了问题:

path = ["app"] + sys.path

因此,当冻结可执行文件时,cx_freeze会获取正确的模块。


查看完整回答
反对 回复 2021-03-27
  • 1 回答
  • 0 关注
  • 164 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信