【问题标题】:Access Denied issue with NVM in Windows 10Windows 10 中 NVM 的访问被拒绝问题
【发布时间】:2022-04-13 21:14:45
【问题描述】:

当我在 Windows 10 中使用 nvm -v 命令时,我收到“访问被拒绝”。 我在这里遇到了类似的问题 NVM is Access Denied

但他自己给出了一个对我不起作用的解决方案。

这个问题有解决办法吗?

【问题讨论】:

  • 您只需以管理员身份运行即可
  • 我不想以管理员身份运行它

标签: node.js windows


【解决方案1】:

我遇到了同样的问题,解决方法如下:

  1. 卸载“NVM for Windows 1.1.7”
  2. 以管理员身份运行安装程序nvm-setup.exe
  3. 打开提升的命令提示符(具有管理员权限)并运行

    • nvm install 8.12.0
    • nvm use 8.12.0

现在在非提升的命令提示符中运行 node -v 可以正常工作。希望这会有所帮助!

【讨论】:

  • 它没有帮助我:(其他人有解决方案吗?
  • 很遗憾我没有管理员权限
  • 这不起作用
  • 对我来说,我所要做的就是在提升的提示下nvm use latest
  • 仅供参考,这对我使用 Powershell 作为管理员不起作用。我不得不使用命令提示符。
【解决方案2】:

与其他 cmets 不同,您不必像 Administrator 一样运行安装程序 nvm-setup.exe。像普通软件一样安装即可。

确保在运行 nvm use xxx 时,以 Administrator 权限在 Command Prompt 中运行它。

【讨论】:

  • 您的 Windows 设置可能已配置为必须以管理员身份安装软件包。
  • 运行 cmd,或在其中打开 cmd 选项卡的 windows 终端(在我的情况下),管理员解决了它:) 谢谢
  • NVM 安装正确后,也不需要以管理员身份运行任何东西,因为它违背了能够独立管理本地环境的目的。
【解决方案3】:
  1. 以管理员身份安装 nvm-setup.exe
  2. 以管理员身份打开 cmd.exe
  3. nvm 安装 14.17.6
  4. nvm 使用 14.17.6

【讨论】:

  • 我可以正常安装,但要更改版本我需要在管理员模式下打开
【解决方案4】:

我的问题出现在 Visual Studio Code 上。

我的情况的解决方案是以管理员身份运行 Visual Studio Code。

【讨论】:

  • 您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center
【解决方案5】:
  1. --> 窗口键 + x
  2. -->Windows PowerShell(管理员)
  3. -->现在正常使用nvm,不会报错。

【讨论】:

  • 唯一对我有用的选项,谢谢
【解决方案6】:

我知道这是一篇比较老的帖子,我相信大多数登陆这里的人都在尝试解决 nvm 1.1.8 引入的拒绝访问功能 - 我希望这对那些人有所帮助。

这在 repos wiki here中有介绍

如果您有权在您的机器上启用开发者模式 - docs

您可以启用开发人员模式,然后在为 windows 安装 nvm 时为 nvm 和 nodejs 选择受保护的“程序文件”文件夹之外的安装目录。

我分别使用 c:\Programs\nvm 和 c:\Programs\nodejs,但您也可以使用 APP_DATA 作为两者的基础,或者按照 wiki 'nvm4w' 中的建议。

我现在可以使用最新的 nvm 并在 VS Code 中运行“nvm use x.x.x”。

【讨论】:

  • 很好的答案。这避免了“以管理员身份运行”的需要,这正是我想要的。
  • 时隔10个月,我又遇到了这个问题,然后通过这个答案解决了问题!安装nvm-setup.exe的时候要把Symlink的默认路径“C:\Program Files\nodejs”改成“C:\nodejs”,安装完成可以重启系统,这样就可以无需管理员权限即可正常使用!
【解决方案7】:

对我来说,我不想每次需要更改节点版本时都以管理员权限运行 cmd,所以我所做的是转到 Windows 上的 NVM 安装文件夹位于 C:\Users\<username>\appdata\Roaming\nvm 并将 Properties>Compatibility 修改为以管理员身份运行,现在当我在 not-running-as-administrator-cmd 上运行 nvm 时,它只会提示我确认是否以管理员身份执行。

【讨论】:

  • 我的公司安装了 BeyondTrust 软件来阻止运行未知软件(痛苦的痛苦!)。以管理员身份打开 CMD 但 NVM 仍然给我“退出状态 1:访问被拒绝” 在 NVM 可执行文件中更改以管理员身份运行解决了问题。谢谢!
【解决方案8】:
  1. 以管理员身份执行终端
  2. 从终端访问文件夹
  3. 对 nvm 使用相同的命令,例如:nvm use 14.19.1

【讨论】:

    【解决方案9】:

    对于那些在Windows中使用nvm v1.1.8的人,我尝试安装nvm并以管理员身份在cmd中打开它。它没有帮助。

    尝试使用 nvm v1.1.7。它对我有用:)

    https://github.com/coreybutler/nvm-windows/releases/download/1.1.7/nvm-setup.zip

    【讨论】:

      【解决方案10】:

      我以管理员身份运行命令 它有效

      run cmd as administrator
      

      然后之后 进入

      nvm use 8.12.0/or your version which you desired to use
      

      然后就可以了

      【讨论】:

        【解决方案11】:

        适用于 Windows 的 NVM 1.1.9 版存在导致此问题的问题。解决方案是删除它,然后安装 1.1.7 版(没有管理员权限),然后它应该可以正常工作了。

        【讨论】:

        • 这在 Windows 10 上对我有用。我不想使用管理员权限。我刚刚从 1.1.9 降级到 1.1.7,一切正常。
        【解决方案12】:
        1. 打开命令提示符
        2. 右键单击工具栏中的命令提示符项
        3. 然后再次右键单击命令提示符
        4. 点击以管理员身份运行
        5. 然后运行 ​​nvm 使用VersionNumber

        【讨论】:

          【解决方案13】:

          [2022 更新]

          我多次遇到这个问题。尝试以管理员身份运行它,但随后出现错误 145,或者因为我在 VSCode 中的集成终端默认未以管理员身份运行而苦苦挣扎...

          这是 NVM Windows 团队在Common Issues 页面中推荐的简单修复。

          1- 在磁盘根目录创建一个名为“nvm4w”的文件夹:C:/nvm4w

          2- 返回您的 nvm-setup.exe 并运行它(如果您丢失了它,请返回 NVM-Windows 版本并下载最新的 nvm-setup.zip 文件。

          3- 然后,当安装程序要求您“选择安装程序应创建 sumlink 的文件夹”时,选择您刚刚创建的“nvm4w”文件夹。

          之后,一切都会好起来的,不再需要管理员权限。

          【讨论】:

          • 这对我不起作用。右键单击 cmd - '以管理员身份运行' 确实如此。
          【解决方案14】:

          上面描述的 admin cmd run-s 都没有解决访问被拒绝的问题。但是我在 C:\NVM\nvm 中重新安装了 nvm 并将 nodejs 文件夹设置为 C:\NVM\nodejs 并且它可以在没有任何访问权限的情况下工作。

          感谢@Daniel McMullen 提供 Wiki 链接

          【讨论】:

            【解决方案15】:

            我从我的计算机上卸载了 NodeJS 和 nvm。然后重新下载nvm并安装了NVM,然后使用这个命令我安装了特定的NodeJS版本npm install 16.x.x

            【讨论】:

              【解决方案16】:

              我遇到了同样的问题。我想安装 nvm 我删除了程序文件中的 node js 文件夹,然后安装了 nvm 但我从安装程序安装了导致此问题的 node js 而不是命令。要使用 nvm,我们必须删除以前安装的节点 js,所以我从控制面板卸载了节点 js 和 nvm,然后按照以下步骤操作:

              1. 已安装 nvm
              2. 使用命令'nvm install v8.12.0'安装节点js
              3. nvm 使用 8.12.0

              【讨论】:

                【解决方案17】:

                我已经安装了我想要的节点版本,但无法在 Powershell 中使用nvm use [version] 进行设置。这对我有用:

                1. 下载 scoop 并使用它安装 sudo for Windows,使用以下link 的说明。
                2. 运行sudo nvm use [version]

                【讨论】:

                  【解决方案18】:

                  在这里没有找到我的问题的解决方案,因此发布这个老问题的答案以造福他人。

                  我在没有管理员权限的情况下在 nvm 之外安装了节点。在这种情况下,无论您是否使用管理员权限安装或运行 nvm,nvm use ____ 都会拒绝访问。

                  我手动卸载了节点,从 nvm 中安装它,然后运行 ​​nvm use 并且它工作正常。

                  【讨论】:

                    【解决方案19】:

                    我刚刚使用“nvm use...”命令降级了我的 nodejs 版本,因为我发现使用 nodejs v17 导致了我的问题。当我将我的(Windows 10)机器设置为使用 nodejs v16.14.0 时,问题就消失了。 为了降级版本,我做了以下事情,因为这样做也有困难: https://github.com/coreybutler/nvm-windows/issues/674#issuecomment-1050369304

                    【讨论】:

                      【解决方案20】:

                      *小心开启开发模式

                      -- 关于拒绝访问-- 在这种情况下,请尝试使用 Git Bash。 搜索您的 Git Bash > 打开文件位置 > 右键单击​​ > 打开属性 > 兼容性并选中以管理员身份运行。 在任何地方打开 Git Bash,输入: nvm 安装版本 非虚拟机列表 nvm 使用您的版本(例如 17.99.99)

                      -- 关于NVM -v -- 命令是: 非虚拟机版本

                      我希望这能解决您和其他人的问题。

                      【讨论】:

                        【解决方案21】:

                        可能是代理问题。可以设置 npm 已经使用的代理 url。

                        您可以通过以下方式找到 npm 代理配置:

                        npm config list
                        

                        然后为nvm设置相同的url:

                        nvm proxy "url"
                        

                        【讨论】:

                          【解决方案22】:

                          在管理中运行命令提示符

                          1. 使用 nvm 安装节点版本

                            nvm install <node_version>(例如:nvm install 16.10.0)

                          2. 使用已安装的节点版本

                            nvm use <node_version>(示例:- nvm 使用 16.10.0)

                          3. 检查节点版本

                            nvm list <node_version>


                          或者卸载之前的nvm版本重新安装再做上面的步骤

                          【讨论】:

                            【解决方案23】:

                            “Elevation”是指 Windows 控制的“Windows 访问权限” 您可以对文件执行哪些操作,特别是您可以读取哪些文件夹 并写信给。您可以使用“以管理员身份运行”来获取它们。

                            1。启用开发者模式

                            设置 -> 更新和安全 -> 开发者版 -> 激活开发者 模式

                            此时,您将能够在没有提升的情况下使用 nvm。

                            2。按需提升 nvm 可执行文件

                            nvm 根目录 -> nvm.exe 属性 -> 兼容性 -> 以管理员身份运行此程序 -> 申请

                            每当您需要使用 nvm 时,系统都会提示您授予提升权限。

                            3。运行提升的命令提示符

                            Windows + R,在框中输入cmd,然后按Ctrl + Shift + Enter

                            旁注

                            对此我不确定,但我认为您可以轻松使用 nvm 1.1.6 版本。

                            【讨论】:

                              【解决方案24】:

                              它解决了我在 Windows 中的问题

                              • 完全删除节点。
                              • 安装 NVM
                              • 以管理员身份打开 CMD
                              • 安装节点特定版本
                              • 打开那个版本(nvm 使用你的版本)

                              【讨论】:

                              • 这在其他答案中已经提到过。 在回答已有答案的旧问题时,请确保提供新颖的解决方案或比现有答案更好的解释。
                              猜你喜欢
                              • 2018-07-23
                              • 1970-01-01
                              • 2020-02-12
                              • 1970-01-01
                              • 1970-01-01
                              • 2017-02-25
                              • 1970-01-01
                              • 1970-01-01
                              • 2011-04-29
                              相关资源
                              最近更新 更多