使用最新的 1.6.2,尝试启动时出现以下错误。 它似乎来自 installDeps.sh
[root<strong i="6">@2274172dfbae</strong> etherpad]# bin/installDeps.sh
Ensure that all dependencies are up to date... If this is the first time you have run Etherpad please be patient.
npm ERR! path /opt/etherpad/src/node_modules/npm/node_modules/dezalgo
npm ERR! code ENOENT
npm ERR! errno -2
npm ERR! syscall rename
npm ERR! enoent ENOENT: no such file or directory, rename '/opt/etherpad/src/node_modules/npm/node_modules/dezalgo' -> '/opt/etherpad/src/node_modules/npm/node_modules/.dezalgo.DELETE'
npm ERR! enoent This is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2018-01-03T17_44_19_081Z-debug.log
版本:
[root<strong i="10">@2274172dfbae</strong> etherpad]# npm -v
5.6.0
[root<strong i="11">@2274172dfbae</strong> etherpad]# node -v
v4.8.7
有任何想法吗?
也许在使用带有 etherpad 的 npm 5.x 时存在问题。
npm 4.0.2
有效..所以也许这需要再次更新依赖项的请求或在有关 npm 5.x 的文档中添加警告
过去我遇到了一些依赖项错误(虽然不是dezalgo
),所以有时对我有用的是安装没有符号链接的依赖项。 不理想,但有效:
npm cache clean
cd src
npm install --no-bin-links
如果您收到错误Maximum call stack size exceeded
,请再次运行npm install --no-bin-links
。
@lpagliari Did not work "delzago" 错误仍然存在并阻止 etherpad 运行
npm 版本:5.6.0
节点版本:8.9.4
Debian 9
我删除了所有 package-lock.json 文件并成功运行 bin/installDeps.sh
@lpagliari我想知道是否更好的解决方案是修改 bin/installDeps.sh 以使用纱线而不是 npm? 较早版本的 npm (5.5.1) 工作正常,但 5.6.0 并非如此。 我会用它做实验,然后告诉你我的结果。
@fspc对我来说看起来不错。 让我们知道它是否对您有用。
@lpagliari是的,这可以解决问题。 我将发送一个更改 installDeps.sh 的拉取请求,以便如果 npm >= 5.6.0,将使用 yarn。
使其与[email protected]一起使用:删除src/package-lock.json
使用当前的 etherpad 连续两次运行bin/run.sh
失败。
最有用的评论
使其与[email protected]一起使用:删除
src/package-lock.json