2

我正在尝试使用Esky更新和冻结 python 应用程序。但是,应用程序的一部分包括静态文件。

Esky 的行为方式是在文件夹之外创建第二个 .exe,其中包含我所包含的所有 python 库和静态数据。

当我从文件夹本身运行 exe 时,一切正常,但是当我运行 esky 创建的 'bootstrap' exe 时,它​​找不到静态数据(因为它不在同一个相对位置)。

我想我可以对 esky 创建的文件夹进行硬编码,但我无法想象这是最好的方法。

有人有任何有用的提示/技巧/解决方案吗?

编辑:包含来自 esky docs 的文件夹结构

prog.exe                     - esky bootstrapping executable
appdata/                     - container for all the esky magic
  appname-X.Y.platform/      - specific version of the application
    prog.exe                 - executable(s) as produced by freezer module
    library.zip              - pure-python frozen modules
    pythonXY.dll             - python DLL
    esky-files/              - esky control files
      bootstrap/             - files not yet moved into bootstrapping env
      bootstrap-manifest.txt - list of files expected in bootstrap env
      lockfile.txt           - lockfile to block removal of in-use versions
      ...other deps...
  updates/                   - work area for fetching/unpacking updates
4

0 回答 0