这是我以前有过类似的问题。 试图找出一种方法来发布可执行文件,而无需客户端需要nltk_data库。 当前目录树如下所示:
.
+-- Include
+-- Lib
+-- Scripts
+-- Src
| +-- mainservice.py << flask service
| +-- mainprogram.py << nltk_data logic
问题是我似乎无法将nltk_data添加为隐藏导入。可执行文件构建正常,但是当客户端运行我的可执行文件时,它表明它需要运行nltk_data。
我当前的pyinstaller命令是:'pyinstaller --hidden-import=flask --onefile -d -y ' + pwd + '/src/semantic_service.py'
我尝试了几种变体来尝试将nltk_data包含为隐藏导入和nltk,并且运气也没有太多。
到目前为止,我已经提到了这个链接https://github.com/pyinstaller/pyinstaller/issues/1099,试图找到没有太多运气的结果。
是否可以将nltk_data创建为隐藏导入,或者客户端是否总是需要此库的副本?如果有一个钩子解决方案,有人可以指点我尝试正确的方向吗?
先谢谢!