Nvm-windows: [求助]安装nvm后无法运行'node'或'npm'命令

创建于 2016-11-06  ·  40评论  ·  资料来源: coreybutler/nvm-windows

我正在尝试在我的 windows8.1(64 位)上安装 nvm。 我按照以下命令进行操作:

  1. 下载压缩文件。
  2. 解压缩并安装它。
  3. 配置环境路径。
  4. 尝试运行“nvm v”,它运行良好。
    image
  1. 尝试安装 nodejs nvm install 4.2.4 64 ,过了一会儿它告诉我安装完成并建议运行nvm use 4.2.4来使用它。
    image
  2. 我运行node -v看看它是否真的有效。 不幸的是,我遇到了一些错误消息。
    image
    这意味着“此应用程序无法在您的计算机上运行。”

这让我很困惑。 有没有人遇到过同样的错误? 以及如何解决?

最有用的评论

如果其他人在安装和使用某个版本后遇到nodenpm命令未找到的问题,我设法通过打开和关闭nvm来解决此问题:

nvm off

nvm on

example

所有40条评论

您需要在“管理员”或提升的命令提示符下运行它。 要更改/创建符号链接,nvm 需要管理员权限。

您可能可以在非管理员提示符下运行常规的“node”和“npm”命令以及一些非修改的“nvm”命令,但是要更改符号链接,它需要提升。

我遇到了同样的问题

@summerinsect你修好了吗?

我也有同样的问题。 当前使用 Windows 10 并运行 Windows Defender。

  1. Windows Defender 在运行 nvm 安装时无法识别任何威胁。
  2. 我正在为命令提示符使用管理员模式
  3. 在节点安装期间我没有看到任何错误消息:

nvm_problem_01

  1. nvm list 给我以下输出:
    nvm_problem_02

  2. c:\program files\nodejs 文件夹仅包含 node_modules 文件夹,这让我认为 nvm 安装未正确完成。

有什么建议?

- - 更新 - -

我通过执行以下操作解决了这个问题:

  1. 我用不同的 NVM_SYMLINK 路径重新安装了 nvm
    (从 c:\program files\nodejs 更改为 c:\nodejs )

  2. 使用具有管理员权限的 PowerShell

  3. 键入命令 [nvm on],将节点和 npm 复制到 NVM_SYMLINK 文件夹(此命令对以前的设置没有任何作用,现在它正确复制文件)。

我的猜测是,即使我以管理员权限运行命令提示符,它也没有对 \program files\nodejs 文件夹的写访问权限。

@andrewbhy酷,它有效! 太感谢了!

不幸的是,这个问题还没有得到解决。 :( 现在,我可以运行 node 命令,但无法运行 npm 命令:
image

image

有什么我错过的吗??


更新:
固定的! npm 安装尚未完成导致此问题(找不到模块 ... npm-cli.js)。

上面提供的步骤对我不起作用...我在本地和系统路径中将NVM_HOMENVM_SYMLINK配置为变量,并将它们包含在我的系统中PATH ,但是,我运行nvm use *.*.*并且无论我切换到哪个版本,NVM 都会创建符号链接,但不会保留我希望使用的 Node 实例。

据我所知,一切都在它需要的地方,但 NVM 并没有保留我使用nvm use设置的节点版本。

额外信息:这是一个全新的 Win7 64 位实例,在尝试启动 NVM 之前,我从未在其上安装过 Node。

我认为您不想在两个地方都有 NVM_HOME 和 NVM_SYMLINK 。 您的 settings.txt 文件中有什么?

@dragon788我发现了这个问题,但它与 env 路径变量无关。 请注意,NVM 安装程序在两个地方都设置了这两个变量,所以这不是我做出的决定。

#230 中详细说明了我的问题的修复

@coreybutler我有同样的问题。 安装后,我可以在管理员模式下运行它,但不能在普通用户模式下运行。 我似乎记得上次我使用这个(几个月前此时),我可以从任何地方使用 nvm,但如果需要进行安装,会出现提示。 这是一种更好的体验——您不必启动管理员 cmd 提示符。 我认为我们应该重新讨论这个问题。

如果您正在下载手动安装程序,这可能是您可以期待的体验,因为没有为您设置任何内容。 这就是我制作安装程序的原因。 它为您准备好一切,包括权限。 请记住,在某些版本的 Windows 上以管理员身份运行它是不够的。 更高版本的 Windows 需要 _elevated_ 管理员权限,但在大多数情况下,它应该在您安装新版本或进行切换时提示您。

如果您在C:\Program Files\内的任何位置安装 NVM4W,则必须使用具有管理员权限的帐户。 这是 Windows 本身的限制,它认为这是一个受保护的目录。

如果您在持久化 Node 版本时遇到问题,请确保您的帐户对 NVM for Windows 用户数据目录具有写入权限。 这是编写settings.txt文件所必需的。

如果您使用的是 Windows 7,请阅读有关Windows 7 支持的信息。

@coreybutler我不确定“手动安装程序”与“安装程序”是什么意思。 我使用了 https://github.com/coreybutler/nvm-windows/releases/download/1.1.1/nvm-setup.zip 。 我的帐户具有管理员权限,但是必须手动启动具有管理员权限的 cmd 提示符才能访问它,这很烦人。

你是说如果我将 nvm 安装在程序文件以外的地方,它会在没有提升权限的情况下工作吗?

@fresheneesz - 很抱歉像泥巴一样清晰:) “手动”安装程序是指“nvm-noinstall.zip”。 您正在使用“安装程序”,即引导您完成设置过程的 GUI。

根据您的 Windows 版本,在其他地方安装只需要管理员权限,而不需要提升的管理员权限。 每当它切换到新版本时,它仍然需要管理员权限(符号链接)。

@fresheneesz - 我刚刚在 Windows 10 中进行了全新安装,它会在切换版本时提示,所以我不确定你为什么必须以管理员权限打开新提示。 您是否安装了诸如 cmder/cygwin/git shell 之类的东西? 有时这些外壳会导致这样的问题。

我似乎已经让它工作了,但我认为我的计算机现在可能总是以管理员模式打开一个 cmd 提示符? 我不确定,它突然切换到黑底绿字,我以为是管理员模式。 IDK,但它现在可以正常工作了!

黑底绿是“cmd”提示符。 蓝底白字是“PowerShell”提示符。 您通常可以在标题栏中告诉管理员权限,它会在上面显示“管理员”,有时会在第一次打开时以C:\Windows\system32开头。

你会认为我疯了,但我无法让 npm 工作,因为没有在 c:\Program Files\nodejs\node_mudules\npm 中的目录树深处为 npm 创建文件无论我如何运行cmd.exe 是否为管理员。 对于傻笑,我以管理员身份运行了 powershell,在 Windows Server 2012 R2 上创建文件没有问题。 powershell 与 cmd.exe 有什么不同我不知道。 不过有一件烦人的事,它很慢。

..呃,好吧,各种疯狂。 即使我可以毫无问题地设置/使用 6.11.3,Node v8.4.0 也有问题。 我最终卸载/删除了 v8.4.0,这次当我重新安装 v8.4.0 时,我离开了“v”并且它起作用了。

@helzgate cmd.exe 仅限于我相信的 256 个字符的路径深度,而 PowerShell“外壳”似乎不受该限制的影响。 奇怪的是v与没有v有所不同,我希望他们会使用几乎相同的逻辑,只是去掉前面的字符,但我还没有深入检查该代码。

我遇到了同样的问题(默认安装后,我只能以管理员身份运行nvmnode )。 但是,如果您选择不同的安装目录,而不是默认安装目录(我使用c:/nodejs用于 Node 和c:/bin/nvm用于 NVM)它完美地工作。 我不再需要成为管理员来运行nodenvm 。 无需特殊设置或配置,只需选择不同的安装位置即可。

当我把 Chocolatey 包放在一起时,我相信我已经将它安装到 C:\ProgramData 因为它可供所有用户访问,但只能由管理员写入,但这意味着只要你运行nvm installnpm install -g管理员提示的

使用 nvm windows 如何安装cordova?

npm install -g 科尔多瓦

安装nvm后遇到这个问题
模块.js:471
抛出错误;
^

错误:找不到模块“C:\Windows\System32node_modules\cordova\bin\cordova”
在 Function.Module._resolveFilename (module.js:469:15)
在 Function.Module._load (module.js:417:25)
在 Module.runMain (module.js:604:10)
运行时(bootstrap_node.js:383:7)
启动时(bootstrap_node.js:149:9)
在 bootstrap_node.js:496:3

E:\Cordova 项目\CordovaApp>nvm ls

  • 6.11.4(当前使用 64 位可执行文件)
    面对这个问题,cordova 2 个月都不能运行。 帮我。
    在安装科尔多瓦时也面临这个问题;
    E:\Cordova 项目\CordovaApp>npm install -g cordova
    npm WARN 已弃用 [email protected]:改用 uuid 模块
    E:\Cordova 项目\CordovaTemplate1\cordova -> E:\Cordova 项目\CordovaTemplate1node_modules\cordova\bin\cordova

@SanjanaTailor - 在使用 nvm4w 之前,您是否安装了先前版本的 Node? 见https://github.com/coreybutler/nvm-windows#installation --upgrades

如果其他人在安装和使用某个版本后遇到nodenpm命令未找到的问题,我设法通过打开和关闭nvm来解决此问题:

nvm off

nvm on

example

优秀的@ChuckkNorris

我尝试了@ChuckkNorris技巧但没有成功。 似乎对我有用的是在nvm install latest之后,包括在路径中:

C:\Users\<user>\AppData\Roaming\nvm\v9.8.0

我还在 C:\Program Files 中看到了一个 nodejs ...想知道它是否附加到 nvm

这是一场噩梦。 我的意思是让这项工作。 我尝试了以上所有方法:将 nvm 安装到其他东西中,然后是 Program Files,使用 PowelShell(管理员)启动安装,打开/关闭 nvm,基本上它们都不起作用。
奇怪的是,当我尝试安装到其他程序文件(如 c:nodejs)时,nvm install 删除了目标目录并且没有安装任何东西。
我正在使用 Windows 10。此时我不建议使用此产品来管理多个节点版本。

嗨@csempesz。 您能否尝试卸载 NVM,然后安装此预发行版,看看它是否能解决您的问题?
https://github.com/b-dur/nvm-windows/releases/tag/1.1.7

我是这样修的...

  1. 以管理员身份重新安装 nvm(即使我使用的是管理员帐户)
  2. 非虚拟机开启
  3. 使用 Powershell 以管理员身份安装了单节点版本。
    我正在使用 Windows 10。

只需使用 powershell 而不是 cmd 再试一次。

@csempesz不要通过安装程序安装它 - 使用巧克力。 这与打开和关闭 nvm 一起为我解决了

安装在不同的文件夹中,然后打开和关闭 nvm,npm -v 工作但 node -v 给出错误“系统找不到指定的路径”

3.nvm开启

为我修复了所有错误。

在 Windows 10 上仍然遇到 1.1.7 这个问题。 node -v 工作正常,但 npm -v 给了我:
image

另外,我的 nod_modules 文件夹是空的

我最终通过以下方式在 Windows 7 中解决了这个问题:

  • 卸载 nvm
  • 将其安装在非默认文件夹( C:\nvmC:\nodejs
  • 手动更改%PATH%以直接使用这些路径,而不是%NVM_HOME%%NVM_SYMLINK%
  • nvm install 10.15.0
  • nvm off
  • nvm on
  • nvm use 10.15.0

只需在 Windows 10 上使用 nvm v1.1.7 遇到此问题。在我的情况下,解决方案是完全删除“C:\Program Filesnodejs”目录(它在 NodeJS 卸载后存在)。 之后nvm use 11.8.0开始正常工作。

谢谢! 我会尝试这样做,看看它是否有效。

@ChuckkNorris 成功了! 谢谢!

@ilog2000完美!谢谢

此页面是否有帮助?
0 / 5 - 0 等级