不同项目的不同节点版本,是否有一种方法告诉节点要使用哪个版本



我有一个很常见的问题。我的许多项目都使用Nodejs,有些是用于业务逻辑的,另一些仅用于某些建筑任务。

我需要在不同的项目中有不同的运行时间,我的一个电子应用需要节点7.10.0,典型的构建套件需要节点8.x。

现在我知道 - 我可以使用sudo n 7.10.0sudo n latest在我的计算机上全球切换运行时(对于那些不知道这一点的人 - 看" N")

无论如何,IMO这并不是那么方便(有时候,我需要在切换版本后重建所有模块,通常我忘记切换等)。有没有一种方法来告诉节点要使用哪种解释器?我可以在项目目录中使用.npmrc文件来强制该子目录中的特定nodejs版本?

我完全搜索了这个(NPMRC节点版本),但没有足够的幸运。

好吧,我找到了类似的问题:

基于项目

自动切换到正确的节点版本

似乎您可以安装" AVN"并使用.node-version文件来做到这一点。

sudo npm install -g avn avn-n
avn setup

然后,您可以在项目中创建一个.node-version文件,然后输入所需版本

echo 7.10.0 > .node-version

然后AVN将检测并激活正确的版本

不幸的是,我会收到其他权限错误。因此,要使这项工作,您需要安装/配置" n"才能在没有sudo/root的情况下工作。

如果您可以使用其他工具,则可以使用nvshim

pip install nvshim  # this is all you need to do

它不会减慢您的外壳启动或切换目录,而是通过绕过这些二进制文件来调用哪个节点版本的查找到调用nodenpmnpx时。文档中的更多详细信息。

来源,我写了工具。

nvm (Node版本管理器)允许我们轻松地在单个计算机上使用不同版本的节点。您可以在这里查看如何配置和使用它。

volta可用于管理同一机器上不同项目上的多个nodejs,npm或纱线版本。它是跨平台。

例如,您可以在项目目录中运行volta pin node@14,如果存在,则可以将节点设置为v14,否则将下载然后将其设置。

更多信息在此处https://docs.volta.sh/guide/

相关内容

  • 没有找到相关文章

最新更新