【问题标题】:Npm updates sucessfully, but still shows old versionnpm更新成功,但仍然显示旧版本
【发布时间】:2018-10-10 02:05:42
【问题描述】:

当我执行npm -v 时,我发现我仍在使用 5.6.0。并不断收到提示以执行npm i npm

但是我已经完成了 sudo npm install npm@latest -g 并再次检查了 npm outdated -g --depth=0 以查看我的全局 npm 最迟已经 (6.0.0)。

我该如何解决这个冲突?我使用的 npm 是最新的还是旧的?是因为我的全局链接不正确还是什么?

【问题讨论】:

标签: npm


【解决方案1】:
sudo npm install -g n

如果你想要最新的稳定版本

sudo n stable

如果你想要最新版本

sudo n latest

然后重启电脑

【讨论】:

  • 我试过你提到的命令,就像以前一样,它确实说它已经更新了 1 个包,现在是 + npm@6.0.0 但是当我执行 npm -v 命令时,我明白了它仍然是5.6.0。所以我很困惑,因为它总是能够在没有错误的情况下更新,但是在检查 -v 时它仍然是旧版本。
  • 我遇到了同样的问题,我只需要重启。
  • 这不应该被否决...没有人提到您需要重新启动计算机才能使其应用更改。 +1
  • 退出再登录!
  • @jscul 重新启动、注销和登录、关闭和打开终端,所有这些都不起作用,因为有一个路径/别名问题导致了这个问题。只有完全卸载节点才有效。
【解决方案2】:

我认为您的问题是replecated,并且已经有了答案。 首先,根据官方documentation,Node 8.11.1 (LTS) 和 Node 10.0.0(最新的当前版本)的 LTS 和当前版本的 NPM 都是 5.6.0。

否则,sudo npm install npm@latest -g 应该全局安装最新版本的 NPM。

【讨论】:

  • 我已经完成了 sudo npm install npm@latest -g 并且在我的终端上它确实说将包更新为 +npm6.0.0,但正如我在最初的问题中提到的那样,当我执行 npm 时-v,我再次看到它是5.6.0。
【解决方案3】:

检查您的/usr/local/lib 文件夹。我有同样的问题,这里有一个node_modules 文件夹。删除它并重新运行[sudo] npm install npm@latest -g 后,它显示并使用了正确的版本。

【讨论】:

    【解决方案4】:

    如果您已经尝试过所有提到的方法,例如:- 须藤 npm 安装 -g n sudo n 稳定

    sudo npm install npm@latest -g 仍然 npm -v 向您显示旧版本,一旦尝试关闭您的终端并打开一个新终端并检查。

    【讨论】:

      【解决方案5】:

      我可以 100% 保证这是可行的。

      我是从教 node.js 的人那里得到的。

      试试 NVM(节点版本管理器)。按以下顺序执行命令:

      1. 卷曲-o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh |重击

      2. 命令 -v nvm

      3. nvm 安装节点

      终于确认更新成功了

      1. npm -v

      【讨论】:

      • 这是完美的解决方案,您可以节省我的时间
      • 我的荣幸 :o)
      • 很高兴为您提供帮助。
      • 完美!感谢您的解决方案。它对我有用。
      • 这应该是公认的答案
      【解决方案6】:

      尝试关闭终端 - 再次打开它应该可以工作,对我来说效果很好。

      *IvanD 在对原帖的评论中写了这个解决方案,我认为值得一帖回复。

      【讨论】:

      • 以为我只是添加关闭和打开、注销和重新登录、关闭并打开计算机并不能解决此问题。显然发生了一些困难的路径/混叠问题。只有卸载和重新安装节点才有效。
      【解决方案7】:

      我今天在使用 Node 安装程序 node-v10.16.0-x64.msi 时遇到了这个问题。即使在安装它之后,我也从 npm -v 获得了节点版本为 3.10 ......我的反应应用程序将无法启动:(

      似乎节点在 %AppData%\Roaming\npm 的 APPDATA 中创建了一个文件夹 那里有一个旧的 npm.exe,它位于用户级别的 Windows 路径中。用户级路径覆盖新安装程序添加其路径的系统级路径。用户覆盖导致找不到新的 npm。解决方案:Shift-Delete %AppData%\Roaming\npm ! :D 使用 node-v10.16.0-x64.msi 删除并重新安装

      现在 npm -v 给出 6.9.0!

      【讨论】:

      • 是的,看来卸载/安装是解决这个问题的方法,其他尝试对我来说也是徒劳的
      【解决方案8】:

      在你的主目录中搜索 node_modules 文件夹,重命名或删除它,然后重试。

      【讨论】:

        【解决方案9】:
        1. 首先从控制面板\所有控制面板项\程序和功能卸载你安装的nodejs。

        2. 从 Program Files (x86) 文件夹中删除 nodejs 文件夹。

        3. 现在安装新版本并检查一次。

        【讨论】:

          【解决方案10】:

          虽然这是一个老问题,答案可能不相关,但我发现自己多次遇到这种情况,有时重启服务器不是解决方案,因为其他进程会受到影响。因此,您需要在不重新启动服务器的情况下刷新终端,为此您可以运行exec bash,这肯定会有所帮助。

          【讨论】:

            【解决方案11】:

            如果所有提及的方法都对您没有帮助,让我们做一个更好的解决方案:

            你需要安装nvm(Node Version Manager)

            然后运行:

            nvm install 14
            

            列出您的版本以查看是否已安装版本

            nvm ls
            

            你会得到这样的列表:

                    v10.2.0
                   v12.18.3
            ->     v14.10.0
                     system
            default -> 14.10.0 (-> v14.10.0)
            node -> stable (-> v14.10.0) (default)
            stable -> 14.10 (-> v14.10.0) (default)
            iojs -> N/A (default)
            unstable -> N/A (default)
            lts/* -> lts/erbium (-> v12.18.3)
            lts/argon -> v4.9.1 (-> N/A)
            lts/boron -> v6.17.1 (-> N/A)
            lts/carbon -> v8.17.0 (-> N/A)
            lts/dubnium -> v10.22.0 (-> N/A)
            lts/erbium -> v12.18.3
            

            像这样切换默认版本:

            nvm alias default 14.10.0
            

            然后检查:

            node -v
            

            如果打印v14.10.0,你准备好摇滚了,如果不是:

            nvm use 14
            

            然后再次检查。

            这需要像魅力一样发挥作用,你会很开心。

            【讨论】:

              【解决方案12】:

              我今天遇到了同样的错误。更新的 npm 版本没有反映。

              我就是这样解决的。

              1. 很多帖子建议使用命令 npm cache clean --f。但是,它对我不起作用。因此,我从位置 C:\Users\SearchYourUserName\AppData\Roaming

                中删除了“npm”和“npm-cache”文件夹
              2. 卸载现有节点。

              3. 重新安装节点版本 v10.x.x。我从https://nodejs.org/dist/latest-v10.x/下载了node-v10.22.1-x64.msi文件并安装了。

              然后检查 npm 版本。它奏效了。

              【讨论】:

                【解决方案13】:

                我发现这个命令行对我有用。

                从版本12.18正确更新到最新版本15.2

                我希望这是有用的:

                nvm install node --reinstall-packages-from=node
                

                【讨论】:

                  【解决方案14】:

                  实际上,这可能是由于您使用 yarn 安装软件包等错误而发生的:

                  // update the version number in package.json then
                  yarn install
                  

                  并尝试使用npm 运行脚本

                  npm run start
                  

                  其实我犯了这个错误。 所以请务必使用yarnnpm,但不能同时使用。

                  【讨论】:

                    【解决方案15】:

                    我遇到了类似的问题。我在 ubuntu 18 上安装了节点 v14.15.4,但是当我使用 node -v 时,它显示 v11.0.0。 要使用 nvm 检查系统上所有可用的节点版本,请使用

                    nvm ls
                    

                    要将新安装的节点版本设置为默认,请使用

                    nvm alias default <version>
                    

                    然后,只需关闭终端并打开一个新终端即可检查节点版本。

                    【讨论】:

                      【解决方案16】:

                      问题总结

                      npm -v # 6.xx
                      npm install npm@latest -g
                      npm -v # still the same, but should be 7.xx
                      

                      解决方案基于fypnlp的回答。

                      curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash
                      

                      终端现在想要配置一些我的 Mac 上还没有的 ~/.zshrc 文件。所以让我们创建它

                      nano ~/.zshrc
                      

                      粘贴

                      export NVM_DIR="$HOME/.nvm"
                      [ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"
                      

                      现在重启终端并运行

                      command -v nvm # should return "nvm"
                      nvm install node
                      npm -v # now it’s 7.xx yay!
                      

                      【讨论】:

                        猜你喜欢
                        • 2015-05-16
                        • 2013-12-28
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        • 2013-12-08
                        • 1970-01-01
                        • 1970-01-01
                        • 1970-01-01
                        相关资源
                        最近更新 更多