Python和科学计算认证群组  - 讨论区

标题:请教:关于打包应用程序找不到traits模块的问题

2013年04月04日 星期四 11:37

用traits做了个GUI的小程序,可是打包成exe时,虽然能生成exe文件,可是运行时都提示“no module named enthought.traits.api”,原pyw文件运行时是没有问题的,我用py2exe和cxfreeze都试过,现象一样(只是提示方式不同),也试过在打包的命令中指定模块名,以及在环境变量中加入traits的路径,都没用,

不知大家有试过没有

2013年04月04日 星期四 19:48

好像没发成功

2013年04月04日 星期四 20:57

我用bbfreeze打包成功过。

2013年04月05日 星期五 00:21

谢谢,找了好久才下下来,明天试看看:)

2013年04月05日 星期五 11:29

我用easy_install 进行了安装,也装了pefile,可是在ipthon环境下执行 from bbfreeze import freezer时提示ImportError: cannot import name modulegraph,还以为是没这包又下载了一个安装,结果是一样的,(后来我在C:\Python27\Lib\site-packages\bbfreeze-1.0.2-py2.7-win32.egg\bbfreeze里找到了modulegraph包,还被提示环境变量冲突,看来之前给装出了点问题)

可是在syder以及cmd下运行时提示pkg_resources.DistributionNotFound: altgraph

不知道该怎么办了,再次求教。

2013年04月06日 星期六 12:03

又下载了altgraph包,装好后运行

from bbfreeze import Freezer
f = Freezer("test")
f.addScript("test.py")
f()

提示没有compat模块,又找来compat.py放入包中,再次运行,终于生成了exe文件,library.zip中的确把traits打包进去了,可是一运行又提示

ImportError: No module named ui.wx.init

ImportError: No module named ui.qt4.init

ImportError: No module named ui.null.init

traits.trait_errors.TraitError: Could not find any UI toolkit called 'null'

出错文件是 pyface/toolkit.py,搜索了目录,site-packages\pyface\ui\wx和qt4目录下是有init.py的,null的也有,但里面没有内容,也没有pyc文件,,手动把init.pyc加入zip的对应目录下,重新运行,现象一样,没什么变化,

而且当把addScript函数中gui_only参数设为True时(不想要显示控制台),运行exe程序就什么反应都没有了;

看来到此为止了,除了没用过pyinstall以外我能想的方法都试过了,,看了下pyinstall的贴,应该也是有些库是无法打包的,

谢谢张老师和关注的朋友们。

2013年04月29日 星期一 23:08

真的没法儿打包,纠结了好久

ImportError: No module named 'enthought.traits.api'

真没什么解决的办法么 T_T

2013年04月30日 星期二 10:14

我发了一个帖子介绍如何打包,大家可以测试一下:

http://www.zeuux.com/group/scipython/bbs/content/54847/

2016年11月05日 星期六 17:36

在Win10 64位机器上运行打包示例时,出现错误。

    import pefile

ImportError: No module named pefile

谢谢

已解决,需要install pefile, 

如下红色区域有误,请重新填写。

    你的回复:

    请 登录 后回复。还没有在Zeuux哲思注册吗?现在 注册 !

    Zeuux © 2022

    京ICP备05028076号