【问题标题】:Installing Node.js (and npm) on Windows 10在 Windows 10 上安装 Node.js(和 npm)
【发布时间】:2015-02-05 06:50:37
【问题描述】:

我在尝试在 Windows 10 上安装 Node 时遇到了一些问题并找到了解决方案。

错误如下:

C:\Users\Stephan>npm
错误:ENOENT,stat 'C:\Users\Stephan\AppData\Roaming\npm'

解决方法如下。

【问题讨论】:

    标签: node.js windows npm installation


    【解决方案1】:

    编辑: 似乎新安装人员不再有这个问题,请参阅 Parag Meshramthis answer,因为我的答案现在可能已经过时了。

    原答案:

    严格按照以下步骤操作:

    • http://nodejs.org/download/下载64位版本,32位是潮人
    • 默认安装在任何你想要的地方:C:\Program Files\nodejs
    • 控制面板->系统->高级系统设置->环境变量
    • 选择PATH 并选择对其进行编辑。

    如果 PATH 变量为 empty,则将其更改为:C:\Users\{YOUR USERNAME HERE}\AppData\Roaming\npm;C:\Program Files\nodejs

    如果 PATH 变量已经包含 C:\Users\{YOUR USERNAME HERE}\AppData\Roaming\npm,则在后面添加以下内容:;C:\Program Files\nodejs

    如果 PATH 变量包含信息,但没有关于 npm 的信息,请将其附加到 PATH 的末尾:;C:\Users\{YOUR USERNAME HERE}\AppData\Roaming\npm;C:\Program Files\nodejs

    现在 PATH 变量设置正确,您仍然会遇到错误。手动进入AppData目录,你会发现Roaming里面没有npm目录。手动创建此目录。

    重新启动命令提示符,npm 现在可以工作了。

    【讨论】:

    • @captainrad 到目前为止我没有遇到任何问题,但我不能确定 12 月 7 日之前是否会发布
    • @captainrad 当我将 C:\Program Files\nodejs 中的文件复制到 Windows 10 上的 C:\Users\{YOUR USERNAME HERE}\AppData\Roaming\npm 时,它起作用了
    • @DannyG 感谢您的编辑,但请仅在改进答案时进行编辑。有关此主题的更多信息,请参阅stackoverflow.com/help/editing
    • 请注意,Stephan,最近的编辑/回滚引发了(不错的)Meta conversation,这可能值得您花时间看看。它可能会为您提供 DannyG 编辑您的答案的更多背景信息。
    • "... 适合潮人" ;-)
    【解决方案2】:

    转到http://nodejs.org/

    然后点击“Download For ...”按钮

    这将下载 .msi(或 Mac 的 .pkg),它将为您完成所有安装和路径,与所选答案不同。

    【讨论】:

    • 介意解释为什么接受的答案对您不起作用?
    • 接受的答案要求我手动输入运行安装程序 (.msi) 时不需要的路径。
    • 那么要么安装程序在过去几周内已更新为自动执行此操作,要么您的系统很幸运 :-) 不过我对此表示怀疑。
    • 这是正确答案。如果您在 Windows 上,则默认安装有效( .msi )...谢谢@foreyez
    • 这应该被标记为正确答案,因为它只是一步解决方案,而不是 @StephanBijzitter 解决方案,它要求我首先浏览他们的下载目录,搜索我不知道的正确版本(不熟悉节点)。
    【解决方案3】:

    除了@StephanBijzitter 的答案,我将使用以下PATH 变量:

    %appdata%\npm
    %ProgramFiles%\nodejs
    

    所以你的新PATH 看起来像:

    [existing stuff];%appdata%\npm;%ProgramFiles%\nodejs
    

    这具有既不依赖于用户也不依赖于 32/64 位的优点。

    【讨论】:

    • 如果您已将其安装在默认位置,那就太好了,但请记住,如果您没有安装,这只会弄乱 PATH 变量。
    【解决方案4】:

    新安装程序(从https://nodejs.org 下载的.msi)具有“添加到路径”选项。默认情况下,它被选中。确保选中它。

    【讨论】:

    • 好吧终于:-)
    • 奇怪,我使用了这个安装程序,他们肯定被检查过。我仍然必须在路径变量中添加 nodejs 文件夹
    【解决方案5】:

    所有内容都应安装在 %appdata% (C:\Users\\AppData\Roaming) 中,而不是“程序文件”中。

    这就是为什么...

    默认的 MSI 安装程序将 Node 和它附带的 NPM 放在“程序文件”中并将其添加到系统路径中,但它将 NPM 的用户路径设置为 %appdata% (c:\users[username]\ appdata\roaming),因为用户没有足够的权限写入“程序文件”。

    这会造成混乱,因为所有模块都进入 %appdata%,并且当您升级 NPM 本身时(NPM 自己建议您立即这样做)您最终会得到两个副本:原始仍然在“程序文件”中,因为 NPM 可以'不要抹去那个,还有新的旅馆%appdata%。

    更糟糕的是,如果您错误地以管理员身份执行 NPM 操作(在 Windows 上比在 *nix 上容易得多),那么它将在 NPM node_modules 的“程序文件”副本上运行。可能是一团糟。

    因此,当您运行安装程序时,只需将其指向 %appdata% 即可避免这一切。

    请注意,这并不奇怪 - 如果您仅使用用户权限运行安装程序,就会发生这种情况。

    【讨论】:

      【解决方案6】:

      您应该以管理员身份运行安装程序。

      1. 以管理员身份运行命令提示符
      2. 存在 msi 文件的 cd 目录
      3. 通过在命令提示符中键入名称来启动 msi 文件
      4. 您应该很高兴看到所有节点命令都可以在新的命令提示符 shell 中运行

      【讨论】:

        【解决方案7】:

        我遇到了同样的问题,是什么帮助我们在安装节点时将我的防病毒保护关闭了大约 10 分钟,它就像一个魅力一样工作。

        【讨论】:

          【解决方案8】:

          您必须修改 AppData 的原因可能是:

          1. Node.js 无法处理超过 256 个字符的路径,Windows 的路径往往很长。
          2. 如果您从公司环境登录,您的 AppData 可能在服务器上 - 这将不起作用。 npm 目录必须在您的本地驱动器中。

          即使这样做了,最新的 LTE (4.4.4) 在 Windows 10 上仍然存在问题,它工作了一段时间,然后每当我尝试:

          $ npm install _some_package_ --global 
          

          节点抛出“FATAL ERROR CALL_AND_RETRY_LAST Allocation failed - process out of memory”错误。仍然尝试找到解决该问题的方法。

          我发现唯一可行的方法是运行 Vagrant 或 Virtual box,然后运行 ​​Linux 命令行(必须匹配路径),这是一个相当混乱的解决方案。

          【讨论】:

            【解决方案9】:

            我遇到了同样的问题,但在尝试了这篇文章的所有内容后都没有成功,我只好重新启动。 所以如果你安装后没有尝试过重启电脑,试试吧。

            安装后重启电脑

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2018-08-19
              • 1970-01-01
              • 1970-01-01
              • 2018-07-25
              • 2019-12-03
              • 1970-01-01
              • 1970-01-01
              • 2018-07-21
              相关资源
              最近更新 更多