PyInstaller 未捆绑附件脚本

问题描述 投票:0回答:1

我正在尝试为我的Python脚本制作一个.exe文件

main_program.py
。该脚本在虚拟环境中运行。当我制作
main_program.exe
时,我会在激活
venv
的情况下进行操作。我的文件夹结构如下:

-Include
-Lib
-Scripts
-main_program.py
-accessory_script.py

accessory_script.py
包含我在
main_program.py
中导入的函数。然而,即使 PyInstaller 生成了一个主要功能为
main_program.exe
的文件,当我运行上述可执行文件时,我得到了一个
[Errno 2]: No such file or directory: path\\to\\appdata\\local\\temp\\MEI9882\\accessory_script.pyc

当我运行

pyinstaller main_program.py
单独生成
dist
文件夹时,我在文件夹中看不到
accessory_script.pyc
。我的问题是,我需要做什么才能确保
accessory_script.py
合并到我的主程序的可执行文件中?

python import path pyinstaller executable
1个回答
0
投票

我发现 Python 已将附件脚本正确合并到我的 EXE 中。附件脚本中的大多数函数都被我的主程序正确调用。但是,其中一个函数(导致 FileNotFound 错误的函数)具有来自

reloading
模块的 @reloading 装饰器。 该模块读取程序的源代码,而不会丢失程序的状态。因为我是通过 EXE 运行代码,所以没有可供搜索的源代码。一旦我删除了这个导入和相关的装饰器,我的程序就再次运行了。

© www.soinside.com 2019 - 2024. All rights reserved.