【问题标题】:npm outdated command shows MISSING in current versionnpm outdated 命令在当前版本中显示 MISSING
【发布时间】:2021-08-21 11:03:08
【问题描述】:

我在 package.json 文件的 devDependencies 中指定了 7.3.0 版本的 babelify,如下所示:

"devDependencies": {
  ...,
  "babelify": "7.3.0",
  ...
}

一切正常,依赖项是从 npm 下载的,但是当我运行 npm outdated 命令时,我得到了:

Package       Current  Wanted        Latest  Location
babelify      MISSING   7.3.0         7.3.0  project

这里发生了什么?为什么失踪?你有过这种情况吗?

【问题讨论】:

  • 当您cd 到您的项目目录并运行$ npm list babelify 时,它会报告(empty) 吗?
  • 不。我有类似的东西: +-- babelify@7.3.0 extraneous `-- UNMET PEER DEPENDENCY watchify@>=3 =3
  • 很奇怪! devDependencies 没有报告 "babelify": "^7.3.0" (即没有 Caret 符号) 似乎也很奇怪。您可以尝试删除node_modules 文件夹,在package.json 中添加插入符号并再次运行$ npm install
  • 不。还是同样的问题。
  • 遇到了同样的问题,除了 'npm update'(删除 node_modules 并运行 npm install 无法解决)之外,没有什么可以解决的。

标签: javascript node.js npm package.json


【解决方案1】:

奇怪的东西家伙。过了一会儿,我注意到在单词 babelify 和引号之后有一个空格。所以我有:

"devDependencies": {
  ...,
  "babelify ": "7.3.0",
  ...
}

代替:

"devDependencies": {
  ...,
  "babelify": "7.3.0",
  ...
}

当我删除空间后一切正常。

【讨论】:

  • 我遇到了完全相同的错误,结果完全相同!感谢上帝的 StackOverflow。所以显然“npm outdated”命令不会修剪包名,而所有其他工具都会这样做。
【解决方案2】:

这里发生了什么?为什么失踪?你有过这种情况吗?

MISSING 表示该软件包未安装。

安装包即可解决问题。

【讨论】:

    【解决方案3】:

    首先,您必须使用npm install 安装所有软件包。 然后npm outdated会显示当前安装的版本。

    【讨论】:

      【解决方案4】:

      缺少的意思是,您没有在 node_module 中安装依赖项,而是在 package.json 中手动编写。

      【讨论】:

        猜你喜欢
        • 2020-02-24
        • 1970-01-01
        • 2023-01-26
        • 1970-01-01
        • 1970-01-01
        • 2017-02-12
        • 1970-01-01
        • 1970-01-01
        • 2020-09-21
        相关资源
        最近更新 更多