Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何禁用cx_冻结以自动检测所有模块_Python_Cx Freeze - Fatal编程技术网

Python 如何禁用cx_冻结以自动检测所有模块

Python 如何禁用cx_冻结以自动检测所有模块,python,cx-freeze,Python,Cx Freeze,cx_冻结构建包括安装在我的机器上的所有模块,因此冻结构建成为一个巨大的问题。如何禁用自动检测功能?我只想构建小型PyQt应用程序: import sys from cx_Freeze import setup, Executable path = sys.path + ["app"] includes = ["app.core", "app.utils"] excludes = ["tcl"] build_exe_options = { "path": path, "icon": "reso

cx_冻结构建包括安装在我的机器上的所有模块,因此冻结构建成为一个巨大的问题。如何禁用自动检测功能?我只想构建小型PyQt应用程序:

import sys
from cx_Freeze import setup, Executable

path = sys.path + ["app"]
includes = ["app.core", "app.utils"]
excludes = ["tcl"]
build_exe_options = {
"path": path,
"icon": "resources\icons\clock.ico"}

base = None
if 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\U冻结放错了模块

如何设置我需要的严格的模块列表?

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

path = sys.path + ["app"]
诀窍在于,应用程序使用模块“utils”,而我的操作系统路径中有其他“utils”模块。其他“utils”模块导入了很多东西,比如matplotlib、PIL等。 所以我通过改变路径环境解决了这个问题,如下所示:

path = ["app"] + sys.path

所以,cx\U freeze在冻结可执行文件时得到了正确的模块。

它包括哪些不应该是的模块?你能把日志放在粘贴箱里吗?不要忘记,PyQt和Python本身需要几个库,它包括我在计算机上安装的所有模块,例如matplotlib、PIL、Tkinter。我在家里有一个带有windows的VM,在那里只需要最低限度的安装(python和PyQt),应用程序构建也很好。但在工作中,我有很多包+自定义包,所以应用程序在构建后失败。这是日志。我只想设置所需的最小模块数,仅此而已=)如果代码中的某些内容加载matplotlib,则可能会引入PIL、numpy和tkinter。尝试将matplotlib添加到“排除”。