我正在尝试使用Esky来更新和冻结python应用程序。但是,部分应用程序包含静态文件。
Esky的行为方式是,它在文件夹外创建了第二个.exe,其中包含我所包含的所有python库和静态数据。
当我从文件夹本身运行exe时,一切正常,但是当我运行'bootstrap'exe esky创建时,它找不到静态数据(因为它不在相同的相对位置)。
我想我可以硬编码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