Python转exe:py2exe与pkg_resources的问题
我用Python做了一个应用程序,想把它分发给我的公司,但不幸的是,不能在每台机器上都安装Python。我想把这个应用程序转换成一个.exe文件,这样用户就可以在桌面上用快捷方式运行我的应用。
这是我第一次尝试分发,所以请原谅我对这个话题了解得不多。我在用py2exe把我的.py脚本转换成.exe时遇到了问题。
我的setup.py脚本是这样的:
from distutils.core import setup
import py2exe
import numpy
import matplotlib
setup(console=['inpho.py'],
data_files=matplotlib.get_py2exe_datafiles()
)
当我运行 python setup.py py2exe
后,我得到了预期的 dist
和 build
文件夹。但是,当我运行现在叫做 InPho.exe
的应用程序时,会弹出一个命令行窗口,然后我立刻就收到一个错误:ImportError: No module named pkg_resources
。
我首先想到的是我的setup.py脚本可能写错了,但我不知道该怎么正确写。在我的inpho.py脚本中,我导入了以下内容:
- pandas
- Tkinter
- pyodbc
- sqlalchemy
- sqlite3
- datetime
- tkMessageBox
- os
- shutil
非常感谢任何帮助!
2 个回答
0
我在使用py2exe的时候遇到了一些类似的问题。我通过把setuptools降级到19.2版本解决了这些问题。
你可以在这里查看更多关于这个setuptools问题的信息:https://github.com/pyinstaller/pyinstaller/issues/1781
1
Py2exe 可能在一开始就不能处理某些依赖关系。你可以参考 py2exe 教程中的建议,看看如何解决导入错误。具体内容可以查看这个链接:处理导入错误