• pyinstaller打包exe后不能运行报Failed to execute script XXXX问题分析与处理


    最近用python的tkinter写了个小工具,发现用pyinstaller打包成exe后运行出错。报Failed to execute script XXXX

    pyinstaller -F -w worksubmit.py
    

    报错
    为了搞清楚报错的原因,想看到程序具体执行的情况。可以通过不带-w的参数打包在控制台看程序执行情况。
    pyinstaller -F worksubmit.py 可以通过不带-w的参数打包,这时打包的exe运行是带控制台的命令行
    运行情况
    可以清楚的看到

    ModuleNotFoundError:No module named ‘xlrd’

    这时就要解决打包时xlrd模块没有打进去的问题,找到xlrd模块的位置,并将该模块打到运行程序包里。
    先找到程序依赖的xlrd模块的位置,在PyCharm中通过"File"->“Setting”,在项目设置里查看Project interpreter,可以看到xlrd的目录位置。
    找包路径

    用pyinstall打包的时候通过加-p的参数将依赖的模块打进去。

    pyinstaller -F -p J:studypython	estsubmitvenvLibsite-packages worksubmit.py
    

    在这里插入图片描述
    这样就可以顺利将依赖的模块打进去,再执行exe文件不再报错了。

    总结一下,碰到打包成exe后运行有问题,可以通过不带-w的参数打包,这时打包的exe运行是带控制台的命令行。基本上所有的运行问题都可以通过控制台的命令定位和排查。

  • 相关阅读:
    Java笔记(十六)……内部类
    pmm系列~基础函数
    redis基础篇~性能问题
    redis基础篇~big-key
    mysql基础~经典题目二
    (转)STORM启动与部署TOPOLOGY
    (转)项目经理怎么当
    专注力的一点体会
    163源报错Hash Sum mismatch 解决方法
    mapreduce.framework.name
  • 原文地址:https://www.cnblogs.com/xiejava/p/15171422.html
Copyright © 2020-2023  润新知