【问题标题】:NodeJS script - npm doesn't show current installed version on exec()NodeJS 脚本 - npm 在 exec() 上不显示当前安装的版本
【发布时间】:2016-10-31 11:59:32
【问题描述】:

我有一个在 /some/project/folder 内部运行的简单脚本

脚本如下:

exec("npm -v", (err, stdout, stderr) => {


        $log.info('version installed', stdout);


    });

现在,当我运行此节点脚本时,它会输出 3.10.9,但是当我进入 /some/project/folder(通过终端)并手动运行 npm -v 时,它会输出 3.3.6

**

这怎么可能?

**

我一直在使用 nvm,但我不明白这是否有问题。

有什么建议

谢谢

【问题讨论】:

  • 将 exec 更改为 exec("which npm", (err...etc 会得到什么?从命令行运行which npm 会得到什么?
  • @LarryTurtis 等..../.nvm/versions/node/v5.0.0/bin/npm
  • 如果我运行 npm outdated -g npm --json 信息是正确的:O
  • 在这两种情况下(从命令行和节点脚本)你得到相同的可执行文件?
  • @LarryTurtis 很抱歉,非常感谢您的努力,现在一切都已修复,我不知道为什么今天它可以工作,也许某处有某种缓存:O 真的不知道,谢谢反正很多!

标签: javascript node.js npm exec nvm


【解决方案1】:

对不起,浪费时间,今天它有效,我没有改变任何东西,所以我不知道为什么昨天没有,今天是。

疯了,还是谢谢你的帮助!

【讨论】:

    猜你喜欢
    • 2017-02-12
    • 2013-01-10
    • 1970-01-01
    • 1970-01-01
    • 2012-01-17
    • 2023-01-20
    • 2014-06-13
    • 1970-01-01
    • 2022-12-17
    相关资源
    最近更新 更多