[英]Python module import failure in Jenkins
我有一个项目要在 Jenkins 上测试和运行。 在我的机器上它工作正常,但是当我尝试在 Jenkins 中运行它时,它无法在工作区中找到一个模块。
在主工作区目录中,我运行以下命令:
python xtests/app_verify_auto.py
并得到错误:
+ python /home/tomcat7/.jenkins/jobs/exit103/workspace/xtests/app_verify_auto.py
Traceback (most recent call last):
File "/home/tomcat7/.jenkins/jobs/exit103/workspace/xtests/app_verify_auto.py", line 19, in <module>
import exit103.data.db as db
ImportError: No module named exit103.data.db
Build step 'Execute shell' marked build as failure
Finished: FAILURE
工作区中存在目录exit103/data,是正确的路径,但是python好像找不到。
无论是否使用 virtualenv,此错误都存在。
可能是你jenkins环境的PATH设置不对造成的。事实上,你的默认用户和jenkins-user的环境是不一样的。
您可以尝试在 jenkins-user 环境中查找 PATH 和 PYTHONPATH 是什么。 尝试在 jenkins “echo $path” 等中运行“shell 命令”以查看它们是什么。
在大多数情况下,您需要自己设置 PATH。 你可以参考这个答案。 Jenkins:将我的 Python 模块放在 PYTHONPATH 上
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.