package.json中没有fsevents,npm install却安装了它,但运行出错

然后运行时,报错如下

dyld: lazy symbol binding failed: Symbol not found: _node_module_register
  Referenced from: /Users/zhangtao/zht/work/wxmgr/node_modules/fsevents/lib/binding/Release/node-v48-darwin-x64/fse.node
  Expected in: flat namespace

dyld: Symbol not found: _node_module_register
  Referenced from: /Users/zhangtao/zht/work/wxmgr/node_modules/fsevents/lib/binding/Release/node-v48-darwin-x64/fse.node
  Expected in: flat namespace

阅读 22.2k
4 个回答

装的过程目测出问题了,删掉重新来

rm -rf node_modules/
npm install

至于 fsevent,这是系统相关的依赖,你不用理会

亲测,删除package-lock.json之后就没问题了。

fsevents不在package.json里,但是仍然安装了,是因为你的系统不是Windows系统,fsevents是苹果系统的可选依赖。至于为什么仍然会安装,你看下你写在package.json里的包是不是有某个或者某些库依赖fseventspackage.json文件里写的是你项目直接依赖的包,这些包依赖的其他包不是在项目根目录的package.json里面写的,而是在包目录里的package.json写的。

至于出错的话,可能是安装时候出错了,由于npm的服务器连接经常不稳定,建议换cnpm淘宝源试一下。

把node_modules中的fsevents文件夹删掉即可。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题