如何解决linux下fsevents模块引起的npm ls报错的问题
发表于:2024-11-27 作者:千家信息网编辑
千家信息网最后更新 2024年11月27日,这篇文章将为大家详细讲解有关如何解决linux下fsevents模块引起的npm ls报错的问题,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。有个项目
千家信息网最后更新 2024年11月27日如何解决linux下fsevents模块引起的npm ls报错的问题
这篇文章将为大家详细讲解有关如何解决linux下fsevents模块引起的npm ls报错的问题,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
有个项目在mac下开发,安装包npm i
,一切正常;
把这个项目放到linux机器上,安装包npm i
,报了一堆warning:
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.2.7 (node_modules/chokidar/node_modules/fsevents):npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.7: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})npm WARN 0403@1.0.0 No descriptionnpm WARN 0403@1.0.0 No repository field.npm WARN optional SKIPPING OPTIONAL DEPENDENCY: abbrev@1.1.1 (node_modules/fsevents/node_modules/abbrev):npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename '/root/2019/0403/node_modules/fsevents/node_modules/abbrev' -> '/root/2019/0403/node_modules/fsevents/node_modules/.abbrev.DELETE'npm WARN optional SKIPPING OPTIONAL DEPENDENCY: ansi-regex@2.1.1 (node_modules/fsevents/node_modules/ansi-regex):npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename '/root/2019/0403/node_modules/fsevents/node_modules/ansi-regex' -> '/root/2019/0403/node_modules/fsevents/node_modules/.ansi-regex.DELETE'npm WARN optional SKIPPING OPTIONAL DEPENDENCY: aproba@1.2.0 (node_modules/fsevents/node_modules/aproba):npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename '/root/2019/0403/node_modules/fsevents/node_modules/aproba' -> '/root/2019/0403/node_modules/fsevents/node_modules/.aproba.DELETE'npm WARN optional SKIPPING OPTIONAL DEPENDENCY: balanced-match@1.0.0 (node_modules/fsevents/node_modules/balanced-match):npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename '/root/2019/0403/node_modules/fsevents/node_modules/balanced-match' -> '/root/2019/0403/node_modules/fsevents/node_modules/.balanced-match.DELETE'npm WARN optional SKIPPING OPTIONAL DEPENDENCY: chownr@1.1.1 (node_modules/fsevents/node_modules/chownr):npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename '/root/2019/0403/node_modules/fsevents/node_modules/chownr' -> '/root/2019/0403/node_modules/fsevents/node_modules/.chownr.DELETE'npm WARN optional SKIPPING OPTIONAL DEPENDENCY: code-point-at@1.1.0 (node_modules/fsevents/node_modules/code-point-at):npm WARN enoent SKIPPING OPTIONAL DEPENDENCY: ENOENT: no such file or directory, rename '/root/2019/0403/node_modules/fsevents/node_modules/code-point-at' -> '/root/2019/0403/node_modules/fsevents/node_modules/.code-point-at.DELETE'...
执行npm ls
,有不少UNMET OPTIONAL DEPENDENCY
的模块,最后还报了一堆错:
│ ├── define-property@2.0.2 deduped│ ├── extend-shallow@3.0.2 deduped│ ├── regex-not@1.0.2 deduped│ └─┬ safe-regex@1.1.0│ └── ret@0.1.15├─┬ UNMET OPTIONAL DEPENDENCY fsevents@1.2.7│ ├── nan@2.13.2│ └─┬ UNMET OPTIONAL DEPENDENCY node-pre-gyp@0.10.3│ ├── UNMET OPTIONAL DEPENDENCY detect-libc@1.0.3│ ├─┬ UNMET DEPENDENCY mkdirp@0.5.1│ │ └── UNMET DEPENDENCY minimist@0.0.8│ ├─┬ UNMET OPTIONAL DEPENDENCY needle@2.2.4│ │ ├─┬ UNMET OPTIONAL DEPENDENCY debug@2.6.9│ │ │ └── UNMET OPTIONAL DEPENDENCY ms@2.0.0│ │ ├─┬ UNMET OPTIONAL DEPENDENCY iconv-lite@0.4.24│ │ │ └── UNMET OPTIONAL DEPENDENCY safer-buffer@2.1.2│ │ └── UNMET OPTIONAL DEPENDENCY sax@1.2.4│ ├─┬ UNMET OPTIONAL DEPENDENCY nopt@4.0.1│ │ ├── UNMET OPTIONAL DEPENDENCY abbrev@1.1.1│ │ └─┬ UNMET OPTIONAL DEPENDENCY osenv@0.1.5│ │ ├── UNMET OPTIONAL DEPENDENCY os-homedir@1.0.2│ │ └── UNMET OPTIONAL DEPENDENCY os-tmpdir@1.0.2│ ├─┬ UNMET OPTIONAL DEPENDENCY npm-packlist@1.2.0│ │ ├─┬ UNMET OPTIONAL DEPENDENCY ignore-walk@3.0.1│ │ │ └─┬ UNMET DEPENDENCY minimatch@3.0.4│ │ │ └─┬ UNMET DEPENDENCY brace-expansion@1.1.11│ │ │ ├── UNMET DEPENDENCY balanced-match@1.0.0│ │ │ └── UNMET DEPENDENCY concat-map@0.0.1│ │ └── UNMET OPTIONAL DEPENDENCY npm-bundled@1.0.5│ ├─┬ UNMET OPTIONAL DEPENDENCY npmlog@4.1.2│ │ ├─┬ UNMET OPTIONAL DEPENDENCY are-we-there-yet@1.1.5│ │ │ ├── UNMET OPTIONAL DEPENDENCY delegates@1.0.0│ │ │ └─┬ UNMET OPTIONAL DEPENDENCY readable-stream@2.3.6│ │ │ ├── UNMET OPTIONAL DEPENDENCY core-util-is@1.0.2│ │ │ ├── UNMET DEPENDENCY inherits@2.0.3│ │ │ ├── UNMET OPTIONAL DEPENDENCY isarray@1.0.0│ │ │ ├── UNMET OPTIONAL DEPENDENCY process-nextick-args@2.0.0│ │ │ ├── UNMET DEPENDENCY safe-buffer@5.1.2│ │ │ ├─┬ UNMET OPTIONAL DEPENDENCY string_decoder@1.1.1│ │ │ │ └── UNMET DEPENDENCY safe-buffer@5.1.2│ │ │ └── UNMET OPTIONAL DEPENDENCY util-deprecate@1.0.2│ │ ├── UNMET DEPENDENCY console-control-strings@1.1.0│ │ ├─┬ UNMET OPTIONAL DEPENDENCY gauge@2.7.4│ │ │ ├── UNMET OPTIONAL DEPENDENCY aproba@1.2.0│ │ │ ├── UNMET DEPENDENCY console-control-strings@1.1.0│ │ │ ├── UNMET OPTIONAL DEPENDENCY has-unicode@2.0.1│ │ │ ├── UNMET OPTIONAL DEPENDENCY object-assign@4.1.1│ │ │ ├── UNMET OPTIONAL DEPENDENCY signal-exit@3.0.2│ │ │ ├─┬ UNMET DEPENDENCY string-width@1.0.2│ │ │ │ ├── UNMET DEPENDENCY code-point-at@1.1.0│ │ │ │ ├─┬ UNMET DEPENDENCY is-fullwidth-code-point@1.0.0│ │ │ │ │ └── UNMET DEPENDENCY number-is-nan@1.0.1│ │ │ │ └── UNMET DEPENDENCY strip-ansi@3.0.1│ │ │ ├─┬ UNMET DEPENDENCY strip-ansi@3.0.1│ │ │ │ └── UNMET DEPENDENCY ansi-regex@2.1.1│ │ │ └─┬ UNMET OPTIONAL DEPENDENCY wide-align@1.1.3│ │ │ └── UNMET DEPENDENCY string-width@1.0.2│ │ └── UNMET OPTIONAL DEPENDENCY set-blocking@2.0.0│ ├─┬ UNMET OPTIONAL DEPENDENCY rc@1.2.8│ │ ├── UNMET OPTIONAL DEPENDENCY deep-extend@0.6.0│ │ ├── UNMET OPTIONAL DEPENDENCY ini@1.3.5│ │ ├── UNMET OPTIONAL DEPENDENCY minimist@1.2.0│ │ └── UNMET OPTIONAL DEPENDENCY strip-json-comments@2.0.1│ ├─┬ UNMET OPTIONAL DEPENDENCY rimraf@2.6.3│ │ └─┬ UNMET OPTIONAL DEPENDENCY glob@7.1.3│ │ ├── UNMET OPTIONAL DEPENDENCY fs.realpath@1.0.0│ │ ├─┬ UNMET OPTIONAL DEPENDENCY inflight@1.0.6│ │ │ ├── UNMET DEPENDENCY once@1.4.0│ │ │ └── UNMET DEPENDENCY wrappy@1.0.2│ │ ├── UNMET DEPENDENCY inherits@2.0.3│ │ ├── UNMET DEPENDENCY minimatch@3.0.4│ │ ├─┬ UNMET DEPENDENCY once@1.4.0│ │ │ └── UNMET DEPENDENCY wrappy@1.0.2│ │ └── UNMET OPTIONAL DEPENDENCY path-is-absolute@1.0.1│ ├── UNMET OPTIONAL DEPENDENCY semver@5.6.0│ └─┬ UNMET OPTIONAL DEPENDENCY tar@4.4.8│ ├── UNMET OPTIONAL DEPENDENCY chownr@1.1.1│ ├─┬ UNMET OPTIONAL DEPENDENCY fs-minipass@1.2.5│ │ └── UNMET DEPENDENCY minipass@2.3.5│ ├─┬ UNMET DEPENDENCY minipass@2.3.5│ │ ├── UNMET DEPENDENCY safe-buffer@5.1.2│ │ └── UNMET DEPENDENCY yallist@3.0.3│ ├─┬ UNMET OPTIONAL DEPENDENCY minizlib@1.2.1│ │ └── UNMET DEPENDENCY minipass@2.3.5│ ├── UNMET DEPENDENCY mkdirp@0.5.1│ ├── UNMET DEPENDENCY safe-buffer@5.1.2│ └── UNMET DEPENDENCY yallist@3.0.3├─┬ glob-parent@3.1.0│ ├─┬ is-glob@3.1.0│ │ └── is-extglob@2.1.1 deduped│ └── path-dirname@1.0.2├── inherits@2.0.3├─┬ is-binary-path@1.0.1│ └── binary-extensions@1.13.1├─┬ is-glob@4.0.1│ └── is-extglob@2.1.1├── normalize-path@3.0.0├── path-is-absolute@1.0.1├─┬ readdirp@2.2.1│ ├── graceful-fs@4.1.15│ ├── micromatch@3.1.10 deduped│ └─┬ readable-stream@2.3.6│ ├── core-util-is@1.0.2│ ├── inherits@2.0.3 deduped│ ├── isarray@1.0.0│ ├── process-nextick-args@2.0.0│ ├── safe-buffer@5.1.2│ ├─┬ string_decoder@1.1.1│ │ └── safe-buffer@5.1.2 deduped│ └── util-deprecate@1.0.2└── upath@1.1.2
npm ERR! missing: mkdirp@0.5.1, required by node-pre-gyp@0.10.3npm ERR! missing: minimist@0.0.8, required by mkdirp@0.5.1npm ERR! missing: minimatch@3.0.4, required by ignore-walk@3.0.1npm ERR! missing: brace-expansion@1.1.11, required by minimatch@3.0.4npm ERR! missing: balanced-match@1.0.0, required by brace-expansion@1.1.11npm ERR! missing: concat-map@0.0.1, required by brace-expansion@1.1.11npm ERR! missing: console-control-strings@1.1.0, required by npmlog@4.1.2npm ERR! missing: inherits@2.0.3, required by readable-stream@2.3.6npm ERR! missing: safe-buffer@5.1.2, required by readable-stream@2.3.6npm ERR! missing: safe-buffer@5.1.2, required by string_decoder@1.1.1npm ERR! missing: console-control-strings@1.1.0, required by gauge@2.7.4npm ERR! missing: string-width@1.0.2, required by gauge@2.7.4npm ERR! missing: strip-ansi@3.0.1, required by gauge@2.7.4npm ERR! missing: code-point-at@1.1.0, required by string-width@1.0.2npm ERR! missing: is-fullwidth-code-point@1.0.0, required by string-width@1.0.2npm ERR! missing: strip-ansi@3.0.1, required by string-width@1.0.2npm ERR! missing: number-is-nan@1.0.1, required by is-fullwidth-code-point@1.0.0npm ERR! missing: ansi-regex@2.1.1, required by strip-ansi@3.0.1npm ERR! missing: string-width@1.0.2, required by wide-align@1.1.3npm ERR! missing: inherits@2.0.3, required by glob@7.1.3npm ERR! missing: minimatch@3.0.4, required by glob@7.1.3npm ERR! missing: once@1.4.0, required by glob@7.1.3npm ERR! missing: once@1.4.0, required by inflight@1.0.6npm ERR! missing: wrappy@1.0.2, required by inflight@1.0.6npm ERR! missing: wrappy@1.0.2, required by once@1.4.0npm ERR! missing: minipass@2.3.5, required by tar@4.4.8npm ERR! missing: mkdirp@0.5.1, required by tar@4.4.8npm ERR! missing: safe-buffer@5.1.2, required by tar@4.4.8npm ERR! missing: yallist@3.0.3, required by tar@4.4.8npm ERR! missing: minipass@2.3.5, required by fs-minipass@1.2.5npm ERR! missing: safe-buffer@5.1.2, required by minipass@2.3.5npm ERR! missing: yallist@3.0.3, required by minipass@2.3.5npm ERR! missing: minipass@2.3.5, required by minizlib@1.2.1
仔细观察发现UNMET OPTIONAL DEPENDENCY
的模块和npm ERR
是同一批模块,也是安装时报warning的那些模块。
再仔细观察发现这些都是fsevents
依赖的模块。
fsevents
只能在macOS下安装,无法在linux系统安装。linux下会跳过fsevents
模块,也不会安装fsevents
依赖的模块。
这其实算是npm的一个bug,npm i
时报Warn
,npm ls
又报Err
,前后不一致,容易有误解。
目前无论用哪个版本的npm都会有这个问题,npm i --no-optional
也不能解决这个问题。
这些报错不影响项目的正常运行,因为linux不需要fsevents
。
如果不希望看到npm Err
,可以用npm i -f
强制安装,安装过程没有warn,安装完后npm ls
看下:
└─┬ chokidar@2.1.5└── fsevents@1.2.7
干净了,没有任何报错。
我的项目是chokidar
这个模块依赖了fsevents
,chokidar
又是browser-sync
、webpack
等依赖的。
关于如何解决linux下fsevents模块引起的npm ls报错的问题就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
模块
问题
项目
内容
文章
时报
更多
知识
篇文章
观察
不错
干净
一致
又是
机器
版本
系统
质量
过程
参考
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
好学易用数据库
颐高互联网科技 航天基地
数据库asm
ue4专用服务器显卡
禹城鸿兴源网络技术有限公司
数据库连接池连接数
以及服务器花视频
网络安全法律法规课程的意义
网络技术也越来越发达英语
传奇dbc数据库在哪里
软件开发规范最新版
计算机网络技术专业大全
网络安全密钥在哪看
网络安全实验室基础关第五题
丰都网络安全宣传周
网件网络存储服务器如何设置
酒泉网络安全委员会
为什么要设置重启服务器
独立显卡服务器直销价格
上海飞机引擎软件开发
沐麟网络技术有限公司
网络安全法的资料百度知道
sql语句存数据库的优缺点
手机软件开发中文工具
武汉厚溥软件开发曾乐
对于网络技术的认识
数据库系统安全例子
网络安全讲座怎么吸引学生
软件开发外包管家
软件开发的方法及优缺点