Node10.24.1、npm6.14.12下全局安装mobileui报preinstall错误
全局安装mobileui触发npm-force-resolutions文件缺失报错解决方法
报错核心原因
- 本次报错的触发点是
mobileui@1.1.20的内置preinstall安装钩子,执行时会自动运行npx npm-force-resolutions工具 - 该工具的运行逻辑为读取当前执行安装命令的工作目录下的
package-lock.json文件,用于强制修正依赖版本冲突 - 当前工作目录
C:\Users\shakeel\Desktop\myapp3下不存在该文件,因此触发ENOENT: no such file or directory, open './package-lock.json'错误,导致安装流程中断
解决步骤 - 第一步:在当前执行命令的目录下,手动生成合法的空
package-lock.json文件- 直接在命令行执行命令快速生成:
echo {} > package-lock.json - 也可手动新建文本文件,内容填写
{},保存为package-lock.json(注意Windows系统需开启文件扩展名显示,避免生成后缀为.txt的无效文件)
- 直接在命令行执行命令快速生成:
- 第二步:重新执行全局安装命令:
npm install -g mobileui
其他说明 - 安装过程中出现的
request@2.88.2、har-validator@5.1.5等依赖废弃警告,属于第三方库的正常提示,不影响安装流程,可直接忽略 - 针对
fsevents的跳过安装警告,是因为该工具仅为macOS系统的文件监听专属依赖,Windows系统下会自动跳过该可选依赖,属于正常表现,与本次报错无关 - 如果生成
package-lock.json后重新安装仍报相同错误,可先执行npm cache clean -f清理本地npm缓存后再重试安装
内容的提问来源于stack exchange,提问作者MSR
相关产品推荐
相关产品推荐

