用PyInstaller打包并使用源文件?

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

我的应用程序自动更新:

  1. 定期在 PyPi 上检查我的应用程序的新版本,
  2. 下载并解压最新的,
  3. 替换源文件,然后重新启动。

我的项目具有以下结构:

app.py
project/
    utils.py
    core.py

新版本会通过

pip download  --no-deps --no-binary :all: project==X.X.X
自动从 PyPi 下载,这会下载提取的
project-X.X.X.tar.gz
并替换上面的
project/
文件夹。然后应用程序将重新启动。

现在,当我使用 PyInstaller 打包我的项目时,它会将所有内容编译为可执行文件,因此无需替换源。

是否可以将项目源放在 PyInstaller 创建的

_internal
文件夹中并使用它们,而不是将所有内容都编译到可执行文件中?

python package pyinstaller
1个回答
0
投票

您可以添加命令

--contents-directory="."
来启用没有内容目录的旧 onedir 布局。检查文档

pyinstaller --contents-directory="." main.py

enter image description here

或者你可以将 PyInstaller 降级为

5.9.0
,它默认使用这样的 onedir 布局。

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