编辑:
尝试将engineio
, socketio
, flask_socketio
, threading
, time
,添加queue
到设置脚本中传递给调用的选项packages
列表中:build_exe
setup
...
packages = [] # Add here the list of packages you have already included
packages += ['engineio', 'socketio', 'flask_socketio', 'threading', 'time', 'queue']
...
setup(...,
options={'build_exe': {...,
'packages'=packages}})
正如 espretto 在您链接的主题中发布的那样:
显然engineio
使用该importlib
模块来动态导入与所选模块对应的任何模块async_mode
cx_Freeze
不解释此代码,因此不知道engineio
需要包含的子模块,您需要告诉它。
engineio.async_drivers.threading
imports和threading
,但可能不会看到,因为是动态导入的。time
queue
cx_Freeze
engineio.async_drivers.threading
如果queue
不起作用,请替换为Queue
.
您可能仍需要将更多包添加到packages
列表中,例如eventlet
, gevent
, uwsgi
, six
, urllib3
, ...
请发布您收到的错误消息的完整堆栈跟踪。查看错误发生的位置并查看源代码engineio
可能有助于找到丢失的包。