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

Azure DevOps流水线执行脚本遇ENOTDIR错误求助

解决Azure DevOps流水线scandir ENOTDIR错误的方案

问题本质

错误Error: ENOTDIR: not a directory, scandir 'D:/a/1/s/EP&T Global/target/cucumber-reports.json'的核心原因:你配置的路径是单个JSON文件,但执行的脚本或插件却试图将其当作目录进行扫描操作。

修复步骤

  • 修正插件/脚本的路径配置
    若使用Cucumber相关报告插件,多数插件要求填写的是报告文件所在的目录路径,而非单个JSON文件路径。将配置中的D:/a/1/s/EP&T Global/target/cucumber-reports.json替换为D:/a/1/s/EP&T Global/target/。
  • 处理路径中的特殊字符与空格
    路径包含空格和&符号,可能引发解析异常,可尝试两种解决方式:
    1. 用引号包裹路径:"D:/a/1/s/EP&T Global/target/"
    2. 改用相对路径:若流水线工作目录为D:/a/1/s/EP&T Global/,直接使用./target/更可靠
  • 验证路径有效性
    在扫描步骤前添加命令行任务(PowerShell或Cmd),执行dir "D:/a/1/s/EP&T Global/target/",确认目标目录和JSON文件真实存在,排除拼写错误。
  • 排查自定义脚本逻辑
    如果是自定义脚本触发的错误,检查代码中是否误将文件路径传入了仅支持目录的扫描方法(比如Node.js的fs.scandir()),调整逻辑为直接读取文件而非扫描目录。

内容的提问来源于stack exchange,提问作者Hiral Pandya

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 21:42:04