惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

雷峰网
雷峰网
B
Blog
博客园_首页
云风的 BLOG
云风的 BLOG
S
SegmentFault 最新的问题
罗磊的独立博客
Jina AI
Jina AI
C
Check Point Blog
Martin Fowler
Martin Fowler
J
Java Code Geeks
博客园 - 司徒正美
美团技术团队
MongoDB | Blog
MongoDB | Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
大猫的无限游戏
大猫的无限游戏
有赞技术团队
有赞技术团队
U
Unit 42
Hugging Face - Blog
Hugging Face - Blog
WordPress大学
WordPress大学
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
博客园 - 叶小钗
博客园 - 三生石上(FineUI控件)
小众软件
小众软件

慕雪的寒舍

【Linux】腾讯云服务器被攻击后,我是怎么排查挖矿木马的 【Agent】Multica使用心得 【AI】叙界S3备份需求,多Agent赛马 【Nginx】使用OpenResty Lua拦截Artalk广告昵称 【AI】给Codex加上rm防误删Hook 【AI】渐进式披露能省Token,但要管住Agent Loop 【Mac】修改Mac的hostname,告别局域网IP乱入 【随笔】招商银行visa金卡申请和绑定海外谷歌账户支付 【工具】用AI随手写博客 【测开】adb shell am start 启动跳链时 & 符号被截断的解决方法 【2026】新年快乐! 【Mac】解决MacBook WiFi玄学问题“连上WiFI但是没网络”的折腾经历 【AI】智谱AutoGLM部署教程:AutoDL云服务器+本地PhoneAgent配置 【Agent.10】OpenAI接口输出格式约束(response_format) 【Agent.09】LangChain里面使用MCP工具 【Hexo】简单记录如何在服务器上部署hexo-friend-article 【ConfyUI】在MacBook上用ConfyUI部署阿里Z-Image最新开源模型 【AI】AI老是喜欢写总结文档,咋办? 【Agent.08】LangChain的第一个Demo:从零开始构建Agent 【Mac】MacBookPro无法连接第2个外接显示器问题解决 【Mac】为Mac配置基本开发环境 【Agent.07】什么是Agent?从Chat到ReAct的AI进化之路 【Agent.06】使用openai sdk实现多轮对话 【Agent.05】OpenAI接口Function Calling工具调用详解 【MCP】无敌了,chrome-devtools-mcp杀死浏览器AI自动化的比赛! 【随笔】本地部署AI的现状和AI本地部署的价值
【Appium】安装 xcuitest 驱动时 npm install 报错的解决方法
慕雪年华 · 2026-04-12 · via 慕雪的寒舍

本文部分内容由 AI 辅助生成,请结合实际情况判断参考。

最近在折腾 Appium 做 iOS 自动化,需要安装 xcuitest 驱动,没想到踩了一个莫名其妙的坑。

报错现象

执行安装命令:

1
appium driver install xcuitest@9.10.5

终端输出如下:

1
2
3
4
5
6
✔ Checking if 'appium-xcuitest-driver' is compatible
✖ Installing 'xcuitest@9.10.5'
Error: ✖ Encountered an error when installing package: npm command 'install --save-dev --no-progress --no-audit --omit=peer --save-exact --global-style --no-package-lock appium-xcuitest-driver@9.10.5 --json' failed with code null.

STDERR:
STDOUT:

报错信息极其简陋,STDERR 和 STDOUT 都是空的,完全没有有效提示。

原因分析

Appium 在安装驱动时会在 ~/.appium/node_modules/.cache/appium/ 目录下创建一个 .install.lock 文件,用来防止并发安装冲突。如果上一次安装过程异常退出(比如强制 Ctrl+C、进程崩溃等),这个锁文件就会残留下来,导致后续的安装流程在拿锁阶段就直接失败,npm 那边甚至来不及输出任何错误信息。

解决方法

删掉这个锁文件,然后重新安装就行了:

1
2
rm ~/.appium/node_modules/.cache/appium/.install.lock
appium driver install xcuitest@9.10.5

删除之后再跑一次安装,正常走完即可。

💡 后续排查思路:如果删了 .install.lock 之后仍然失败,建议直接用 npm 单独测试能否正常安装这个包:

1
npm install appium-xcuitest-driver@9.10.5 --save-dev

如果 npm 本身报错了,说明问题出在 npm 环境和网络层面,需要从 npm 配置(镜像源、registry)、Node.js 版本等方面进一步排查,而不是继续在 Appium 这一层兜圈子。

小结

这类锁文件残留的问题在各种包管理工具里都挺常见的,npm、yarn、pip、cargo 都有类似机制。遇到安装命令无缘无故失败、报错信息又非常空洞的时候,可以优先检查一下有没有残留的 lock 或 pid 文件。

版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 慕雪的寒舍

赞助

  • 爱发电

    爱发电