cx_freeze error with plotly,Python 3.6
问题描述:
我遇到了使用Anaconda 3,plotly和cx_freeze生成可执行文件的问题。也许你们可以启发我的想法。我可以生成.exe,但是当我运行它时,我得到这个:cx_freeze error with plotly,Python 3.6
Traceback (most recent call last):
File "C:\ProgramData\Anaconda3\lib\site-
packages\cx_Freeze\initscripts\__startup__.py", line 14, in run
module.run()
File "C:\ProgramData\Anaconda3\lib\site-
packages\cx_Freeze\initscripts\Console.py", line 26, in run
exec(code, m.__dict__)
File "main.py", line 15, in <module>
File "C:\Users\a\Documents\b\c\plot_3d.py", line
1, in <module>
import plotly as py
File "C:\ProgramData\Anaconda3\lib\site-packages\plotly\__init__.py", line
31, in <module>
from plotly import (plotly, dashboard_objs, graph_objs, grid_objs,
tools,
File "C:\ProgramData\Anaconda3\lib\site-
packages\plotly\graph_objs\__init__.py", line 14, in <module>
from plotly.graph_objs.graph_objs import * # this is protected with
__all__
File "C:\ProgramData\Anaconda3\lib\site-
packages\plotly\graph_objs\graph_objs.py", line 34, in <module>
from plotly import exceptions, graph_reference
File "C:\ProgramData\Anaconda3\lib\site-
packages\plotly\graph_reference.py", line 9, in <module>
from pkg_resources import resource_string
ModuleNotFoundError: No module named 'pkg_resources'
看起来像我有问题的情节。经过一段时间后,我仍然无法找到解决方案。这是我的setup.py:
import sys
kwargs = {"name": "x",
"version": "1.2",
"author": "x",
"author_email": "x",
"description": "x",
"zip_safe": False
}
try:
if sys.argv[1] == "build":
import os
from setuptools import find_packages
from cx_Freeze import setup, Executable
os.environ["TCL_LIBRARY"] = r"C:\\ProgramData\\Anaconda3\\tcl\\tcl8.6"
os.environ["TK_LIBRARY"] = r"C:\\ProgramData\\Anaconda3\\tcl\\tk8.6"
kwargs["options"] = {
"build_exe": {
"packages": find_packages() + ["os", "numpy", "plotly"],
"includes": ["numpy", "plotly"],
}
}
kwargs["executables"] = [Executable(r"main.py", base="console")]
setup(**kwargs)
except Exception as e:
print(e)
我试过this solution without success,有什么建议吗?谢谢。
答
的解决方案是包括每包:
"includes": ["numpy", "plotly", "pkg_resources", "appdirs", "packaging.specifiers", "packaging.requirements"]
'ModuleNotFoundError:无模块命名为“pkg_resources'。你能确认这个文件存在于你的env路径中吗? – Noqomo
@Noqomo原谅我,你指的是哪个文件?如果你的意思是graph_reference,是它在C:\ ProgramData \ Anaconda3 \ Lib \ site-packages \ plotly –
嗨,我指的是你的'pkg_resources'似乎丢失。我会尝试'pip install --upgrade setuptools'和'pip install --upgrade distribute'来确保它没有损坏。 – Noqomo