在部署到AWS时,我得到了以下纱线错误
error fs-extra@7.0.1: The engine "node" is incompatible with this module. Expected version ">=6 <7 || >=8". Got "7.0.0"
你知道怎么解决吗?
如果我在package.json中指定引擎,这将奏效吗
{
"engines" : {
"node" : ">=8.0.0"
}
}
在部署到AWS时,我得到了以下纱线错误
error fs-extra@7.0.1: The engine "node" is incompatible with this module. Expected version ">=6 <7 || >=8". Got "7.0.0"
你知道怎么解决吗?
如果我在package.json中指定引擎,这将奏效吗
{
"engines" : {
"node" : ">=8.0.0"
}
}
当前回答
我在Ubuntu上也遇到了类似的问题,即使在最新版本安装了很多次Nodejs之后,它总是显示相同的旧Nodejs版本;我发现它每次都在安装类似的旧Debian包,甚至在执行apt-get update命令之后也是如此
最后,我通过清除旧的nodeJs,然后添加不同的存储库源代码,并按照如下方式正常安装新发行版的nodeJs:
sudo apt-get purge --auto-remove nodejs
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
请在下面找到所有NodeJs发行版的列表 https://github.com/nodesource/distributions/blob/master/README.md
您可能会找到其他方法进行更新,但这个方法对我很有用。
其他回答
我在Ubuntu上也遇到了类似的问题,即使在最新版本安装了很多次Nodejs之后,它总是显示相同的旧Nodejs版本;我发现它每次都在安装类似的旧Debian包,甚至在执行apt-get update命令之后也是如此
最后,我通过清除旧的nodeJs,然后添加不同的存储库源代码,并按照如下方式正常安装新发行版的nodeJs:
sudo apt-get purge --auto-remove nodejs
curl -fsSL https://deb.nodesource.com/setup_14.x | sudo -E bash -
sudo apt-get install -y nodejs
请在下面找到所有NodeJs发行版的列表 https://github.com/nodesource/distributions/blob/master/README.md
您可能会找到其他方法进行更新,但这个方法对我很有用。
我的问题用yarn—ignore-engines解决了,但我不知道为什么以及如何解决。
我建议按照错误消息说的去做,检查你的node .js版本(node -v)。升级Node.js最简单的方法是使用n版本管理器:
$ npm install -g n
请安装Node的最新(n个最新)或LTS (n个LTS)版本。
很多答案说设置标志来忽略版本错误。
更好的选择是使用它作为提醒,将您的节点版本更新到您想要安装的包所支持的最新版本。
nvm install 16.16.0 # download & install locally on your system
nvm use 16.16.0 # update current project's .nvmrc file
注意,第二个命令将更新您的本地.nvmrc,该命令指定每个项目节点的版本。
节点生态系统更新很快,即使是“长期支持”(LTS)版本也会在大约3年后停止获得支持。使用此页面查看最新的LTS发布版本,并从错误消息中确保它与正在安装的包所期望的节点版本匹配。
我现在发现了这个问题,用一个旧代码,然而,我解决了它: 纱升级