Jitsi Meet Web源码构建失败(ENOSPC错误)及版本适配咨询
问题描述
我按照Jitsi Meet Web版官方开发教程开发,源码取自官方仓库,当前环境满足官方要求:
OS: Ubuntu 20.04.5 LTS Nodejs: v16.19.1 Npm: 8.19.3
执行make dev命令时触发ENOSPC错误,具体报错信息如下:
./node_modules/.bin/webpack serve --mode development <i> [webpack-dev-server] SSL certificate: /home/user/Jitsi-dev/jitsi-meet/node_modules/.cache/webpack-dev-server/server.pem <i> [webpack-dev-server] [HPM] Proxy created: / -> https://alpha.jitsi.net <i> [webpack-dev-server] Project is running at: <i> [webpack-dev-server] Loopback: https://127.0.0.1:8080/ <i> [webpack-dev-server] Content not from webpack is served from '/home/user/Jitsi-dev/jitsi-meet' directory node:internal/errors:478 ErrorCaptureStackTrace(err); ^ Error: ENOSPC: System limit for number of file watchers reached, watch '/home/user/Jitsi-dev/jitsi-meet/node_modules/@atlaskit/tokens/dist/cjs/artifacts/tokens-raw/atlassian-dark.js' at FSWatcher.<computed> (node:internal/fs/watchers:244:19) at Object.watch (node:fs:2296:34) at createFsWatchInstance (/home/user/Jitsi-dev/jitsi-meet/node_modules/chokidar/lib/nodefs-handler.js:119:15) at setFsWatchListener (/home/user/Jitsi-dev/jitsi-meet/node_modules/chokidar/lib/nodefs-handler.js:166:15) at NodeFsHandler._watchWithNodeFs (/home/user/Jitsi-dev/jitsi-meet/node_modules/chokidar/lib/nodefs-handler.js:331:14) at NodeFsHandler._handleFile (/home/user/Jitsi-dev/jitsi-meet/node_modules/chokidar/lib/nodefs-handler.js:395:23) at NodeFsHandler._addToNodeFs (/home/user/Jitsi-dev/jitsi-meet/node_modules/chokidar/lib/nodefs-handler.js:637:21) Emitted 'error' event on FSWatcher instance at: at FSWatcher._handleError (/home/user/Jitsi-dev/jitsi-meet/node_modules/chokidar/index.js:647:10) at NodeFsHandler._addToNodeFs (/home/user/Jitsi-dev/jitsi-meet/node_modules/chokidar/lib/nodefs-handler.js:645:18) { errno: -28, syscall: 'watch', code: 'ENOSPC', path: '/home/user/Jitsi-dev/jitsi-meet/node_modules/@atlaskit/tokens/dist/cjs/artifacts/tokens-raw/atlassian-dark.js', filename: '/home/user/Jitsi-dev/jitsi-meet/node_modules/@atlaskit/tokens/dist/cjs/artifacts/tokens-raw/atlassian-dark.js' } make: *** [Makefile:125: dev] Error 1
需要解决该错误,或获取可成功构建运行的Node.js、npm、Jitsi Meet源码的准确版本组合。
解决方案
1. 修复ENOSPC错误(优先推荐)
该错误是Linux系统文件监听数量上限不足导致,webpack-dev-server依赖的chokidar工具监听文件变化时触发此限制。可通过以下方式调整:
临时生效(重启系统后失效):
执行命令临时调高监听上限:echo fs.inotify.max_user_watches=524288 | sudo tee -a /proc/sys/fs/inotify/max_user_watches && sudo sysctl -p永久生效:
编辑sysctl配置文件添加固定限制:sudo nano /etc/sysctl.conf在文件末尾添加一行:
fs.inotify.max_user_watches=524288保存后执行命令让配置立即生效:
sudo sysctl -p
2. 版本匹配建议
若调整系统限制后仍存在问题,可尝试使用经过验证的稳定版本组合:
- Node.js:v16.20.2(16.x系列最终稳定版)
- npm:8.19.4(与Node.js 16.x适配的稳定版本)
- Jitsi Meet源码:切换到仓库的
stable分支,该分支代码经过充分测试,兼容性更强。
执行构建前建议清理缓存并重新安装依赖:
npm cache clean --force rm -rf node_modules package-lock.json npm install
内容的提问来源于stack exchange,提问作者TungHarry
相关产品推荐
相关产品推荐

