Python ImportError:PyCapsule“导入无法导入模块”;pyexpat“;
我正在使用Jenkins构建一个python(Flask)解决方案,以部署到Google应用程序引擎。作为构建过程的一部分,我运行了一些集成测试 其中一个失败,出现以下错误Python ImportError:PyCapsule“导入无法导入模块”;pyexpat“;,python,google-app-engine,jenkins,Python,Google App Engine,Jenkins,我正在使用Jenkins构建一个python(Flask)解决方案,以部署到Google应用程序引擎。作为构建过程的一部分,我运行了一些集成测试 其中一个失败,出现以下错误 ERROR: Failure: ImportError (PyCapsule_Import could not import module "pyexpat") ---------------------------------------------------------------------- Traceback (
ERROR: Failure: ImportError (PyCapsule_Import could not import module "pyexpat")
----------------------------------------------------------------------
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/nose-1.3.6-py2.7.egg/nose/loader.py", line 420, in loadTestsFromName
addr.filename, addr.module)
File "/usr/local/lib/python2.7/dist-packages/nose-1.3.6-py2.7.egg/nose/importer.py", line 47, in importFromPath
return self.importFromDir(dir_path, fqname)
File "/usr/local/lib/python2.7/dist-packages/nose-1.3.6-py2.7.egg/nose/importer.py", line 94, in importFromDir
mod = load_module(part_fqname, fh, filename, desc)
File "/opt/bitnami/apps/jenkins/jenkins_home/jobs/CFC Melbourne production pipeline/workspace/Tests/test_integration.py", line 4, in <module>
from main import app
File "/opt/bitnami/apps/jenkins/jenkins_home/jobs/CFC Melbourne production pipeline/workspace/main.py", line 28, in <module>
from Routes.AdminRoutes import admin_routes
File "/opt/bitnami/apps/jenkins/jenkins_home/jobs/CFC Melbourne production pipeline/workspace/Routes/AdminRoutes.py", line 7, in <module>
from thirdpartylib import cloudstorage
File "/opt/bitnami/apps/jenkins/jenkins_home/jobs/CFC Melbourne production pipeline/workspace/thirdpartylib/cloudstorage/__init__.py", line 22, in <module>
from cloudstorage_api import *
File "/opt/bitnami/apps/jenkins/jenkins_home/jobs/CFC Melbourne production pipeline/workspace/thirdpartylib/cloudstorage/cloudstorage_api.py", line 37, in <module>
import xml.etree.cElementTree as ET
File "/usr/lib/python2.7/xml/etree/cElementTree.py", line 3, in <module>
from _elementtree import *
ImportError: PyCapsule_Import could not import module "pyexpat"
我想它已经安装了,但是模块无法导入。请帮忙
模块位于python路径中
>>> import sys
>>> print sys.path
['', '/usr/local/lib/python2.7/dist-packages/setuptools-15.2-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/no
se-1.3.6-py2.7.egg', '/usr/local/lib/python2.7/dist-packages/pip-7.0.3-py2.7.egg', '/usr/lib/python2.7', '/usr/lib/
python2.7/plat-linux2', '/usr/lib/python2.7/lib-tk', '/usr/lib/python2.7/lib-old', '/usr/lib/python2.7/lib-dynload'
, '/usr/local/lib/python2.7/dist-packages', '/usr/lib/python2.7/dist-packages', '/usr/lib/pymodules/python2.7']
>>>
似乎
/usr/lib/python2.7/lib dynload/
不在Python的路径中。
您可以使用以下Python命令检查这一点:
import sys
print sys.path
如果未显示,则可以设置PYTHONPATH
环境变量:
$ export PYTHONPATH=$PYTHONPATH:/usr/lib/python2.7/lib-dynload/
请确保检查PYTHONPATH
环境变量是否为空,如果为空,请将由“:
”分隔的sys.path
的值复制到它
希望我能帮上忙。我找到了解决此问题的方法: 在jenkins脚本中,只需清除开头的LD_LIBRARY_PATH变量: 导出LD_库_路径=“”
这就成功了 在我用gcc 5.4在Ubuntu16.04上安装了caffe之后出现了这个错误 这对我很有用:
pip uninstall scikit-image
sudo apt-get install python-skimage
但是,上述方法在另一台同样存在此问题的机器上不起作用:
这项工作:
ldd /usr/lib/python2.7/lib-dynload/pyexpat.x86_64-linux-gnu.so
linux-vdso.so.1 => (0x00007fffa4570000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f3ff57dc000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f3ff5416000)
libexpat.so.1 => /opt/oracle/product/11.2.0/dbhome_1/lib/libexpat.so.1 (0x00007f3ff52e5000)
/lib64/ld-linux-x86-64.so.2 (0x00005645018a1000)
#and just rename that libexpat.so.1
cd /opt/oracle/product/11.2.0/dbhome_1/lib
sudo mv libexpat.so.1 libexpat.so.1.bak
取自:它位于路径中。我修正了这个问题。你有没有找到解决这个问题的办法?没有。我不得不删除依赖于模块的测试。
ldd /usr/lib/python2.7/lib-dynload/pyexpat.x86_64-linux-gnu.so
linux-vdso.so.1 => (0x00007fffa4570000)
libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f3ff57dc000)
libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f3ff5416000)
libexpat.so.1 => /opt/oracle/product/11.2.0/dbhome_1/lib/libexpat.so.1 (0x00007f3ff52e5000)
/lib64/ld-linux-x86-64.so.2 (0x00005645018a1000)
#and just rename that libexpat.so.1
cd /opt/oracle/product/11.2.0/dbhome_1/lib
sudo mv libexpat.so.1 libexpat.so.1.bak