PyInstaller ErroNo2“没有这样的文件或目录:'akespec'”

时间:2018-12-26 19:27:42

标签: python pyinstaller

Errno2似乎是PyInstaller的常见错误,但恐怕此站点上没有任何结果正在讨论此特定文件/目录。我怀疑某个地方有一个“ typo”,这导致PyInstaller将文件名读取为“ akespec”而不是“ makespec”

Traceback的日志在这里:

Traceback (most recent call last):
  File "c:\programdata\anaconda3\lib\runpy.py", line 193, in _run_module_as_main

    "__main__", mod_spec)
  File "c:\programdata\anaconda3\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\ProgramData\Anaconda3\Scripts\pyinstaller.exe\__main__.py", line 9, i
n <module>
  File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\__main__.py", lin
e 111, in run
    run_build(pyi_config, spec_file, **vars(args))
  File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\__main__.py", lin
e 63, in run_build
    PyInstaller.building.build_main.main(pyi_config, spec_file, **kwargs)
  File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\build_ma
in.py", line 838, in main
    build(specfile, kw.get('distpath'), kw.get('workpath'), kw.get('clean_build'
))
  File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\build_ma
in.py", line 784, in build
    exec(text, spec_namespace)
  File "<string>", line 31, in <module>
  File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\building\api.py",
 line 410, in __init__
    self.console, self.uac_admin, self.uac_uiaccess)
  File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\utils\win32\winma
nifest.py", line 1047, in create_manifest
    manifest = ManifestFromXMLFile(manifest)
  File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\utils\win32\winma
nifest.py", line 999, in ManifestFromXMLFile
    manifest.parse(filename_or_file)
  File "c:\programdata\anaconda3\lib\site-packages\PyInstaller\utils\win32\winma
nifest.py", line 741, in parse
    domtree = minidom.parse(filename_or_file)
  File "c:\programdata\anaconda3\lib\xml\dom\minidom.py", line 1958, in parse
    return expatbuilder.parse(file)
  File "c:\programdata\anaconda3\lib\xml\dom\expatbuilder.py", line 910, in pars
e
    with open(file, 'rb') as fp:
FileNotFoundError: [Errno 2] No such file or directory: 'akespec'

我应该如何纠正这个问题?

谢谢 苏厄姆

1 个答案:

答案 0 :(得分:1)

通过@ narendra-choudhary的一些帮助,我发现主要问题在spec文件中。

首先将manifest的值从'akespec'更改为'makespec'可简化错误日志。

错误日志仍然显示-“没有这样的文件或目录:'makespec'”。

因此,我手动编辑了manifest值以指向构建目录和正确的清单文件。

它最终在dist文件夹中生成了一个运行良好的exe。