You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jenkins环境中导入xml.dom.minidom时出现ModuleNotFoundError问题求助

Jenkins环境中导入xml.dom.minidom时出现ModuleNotFoundError问题求助

看起来你在Jenkins环境里运行Python脚本时碰到了模块找不到的问题,我来帮你分析下可能的原因和解决办法:

你遇到的错误信息:

Traceback (most recent call last):
File "C:\\tmp\\test_temp1\\test\\data\\test.py", line 5, in <module>
from xml.dom import minidom
File "C:\\tool\\python\\3.9.5.0.2\\python-3.9.5.amd64\\lib\\xml\\dom\\minidom.py", line 23, in <module>
from xml.dom.xmlbuilder import DOMImplementationLS, DocumentLS
File "C:\\tool\\python\\3.9.5.0.2\\python-3.9.5.amd64\\lib\\xml\\dom\\xmlbuilder.py", line 6, in <module>
from xml.dom.NodeFilter import NodeFilter
ModuleNotFoundError: No module named 'xml.dom.NodeFilter'

你的test.py代码片段:

import os
import sys
import json
import re
from xml.dom import minidom

# ... 其他代码
docs = minidom.parse(file)

可能的解决思路:

  • 确认Jenkins使用的Python环境是否正确:在Jenkins的构建步骤里添加一个命令执行步骤(Windows用cmd,Linux用shell),运行python --version和where python(Windows)/which python(Linux),看看输出的路径和版本是不是你配置的C:\tool\python\3.9.5.0.2\python-3.9.5.amd64,有可能Jenkins默认用了系统其他的Python环境,导致模块路径不对。
  • 检查Python安装是否完整:xml.dom.NodeFilter是Python标准库的一部分,正常安装的Python 3.9.5应该自带这个模块。你可以手动去C:\tool\python\3.9.5.0.2\python-3.9.5.amd64\lib\xml\dom目录下查看是否存在NodeFilter.py文件,如果没有,说明你的Python安装包损坏或不完整,建议重新下载官方的Python 3.9.5安装包,覆盖现有路径重新安装。
  • 验证Jenkins的运行权限:有时候Jenkins服务的运行用户没有读取Python安装目录文件的权限,也会导致模块加载失败。你可以检查Python安装目录的权限设置,确保Jenkins服务用户拥有读取该目录及所有子文件的权限。
  • 在Jenkins环境外测试脚本:先在Jenkins所在的机器上,打开命令行切换到指定的Python环境(运行C:\tool\python\3.9.5.0.2\python-3.9.5.amd64\python.exe),然后执行你的test.py脚本,如果本地运行正常,那问题大概率出在Jenkins的环境配置上,比如环境变量未正确设置,或者构建时的工作目录存在异常。

备注:内容来源于stack exchange,提问作者Gowrisankar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 11:23:11