Npm错误 - 找不到匹配的版本

Dan*_*ero 24 npm

我用git克隆一个项目,该项目是用离子2创建的,但当我执行命令重新创建node_modules文件夹时,我得到了这个错误.

npm install
npm WARN deprecated object-keys@0.2.0: Please update to the latest object-keys
npm ERR! code ETARGET
npm ERR! notarget No matching version found for ionic-native@^3.5.0
npm ERR! notarget In most cases you or one of your dependencies are requesting
npm ERR! notarget a package version that doesn't exist.
npm ERR! notarget 
npm ERR! notarget It was specified as a dependency of 'ionic-hello-world'
npm ERR! notarget 

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/wihermes/.npm/_logs/2017-06-02T13_58_47_295Z-debug.log
Run Code Online (Sandbox Code Playgroud)

注意:我已经更新了npm.

有谁知道如何修理它?

Ole*_*vas 42

首先尝试删除package-lock.json文件

  • 这根本不是解决方案!删除锁定文件就像将大多数软件包更新到最新的已知版本一样.在最坏的情况下,您的项目中没有测试.然后你必须手动检查每个小功能,以验证一切仍然正常. (5认同)
  • 我试图安装一个确实存在的版本。我使用“npm view”确认它确实存在。出于某种原因,这对我有用。 (2认同)

Pet*_*eid 31

您指定的版本或您指定的某个依赖项未发布到npmjs.com

执行npm view ionic-native(参见docs)为包版本返回以下输出:

versions:
   [ '1.0.7',
     '1.0.8',
     '1.0.9',
     '1.0.10',
     '1.0.11',
     '1.0.12',
     '1.1.0',
     '1.1.1',
     '1.2.0',
     '1.2.1',
     '1.2.2',
     '1.2.3',
     '1.2.4',
     '1.3.0',
     '1.3.1',
     '1.3.2',
     '1.3.3',
     '1.3.4',
     '1.3.5',
     '1.3.6',
     '1.3.7',
     '1.3.8',
     '1.3.9',
     '1.3.10',
     '1.3.11',
     '1.3.12',
     '1.3.13',
     '1.3.14',
     '1.3.15',
     '1.3.16',
     '1.3.17',
     '1.3.18',
     '1.3.19',
     '1.3.20',
     '1.3.21',
     '1.3.22',
     '1.3.23',
     '1.3.24',
     '1.3.25',
     '1.3.26',
     '1.3.27',
     '2.0.0',
     '2.0.1',
     '2.0.2',
     '2.0.3',
     '2.1.2',
     '2.1.3',
     '2.1.4',
     '2.1.5',
     '2.1.6',
     '2.1.7',
     '2.1.8',
     '2.1.9',
     '2.2.0',
     '2.2.1',
     '2.2.2',
     '2.2.3',
     '2.2.4',
     '2.2.5',
     '2.2.6',
     '2.2.7',
     '2.2.8',
     '2.2.9',
     '2.2.10',
     '2.2.11',
     '2.2.12',
     '2.2.13',
     '2.2.14',
     '2.2.15',
     '2.2.16',
     '2.2.17',
     '2.3.0',
     '2.3.1',
     '2.3.2',
     '2.4.0',
     '2.4.1',
     '2.5.0',
     '2.5.1',
     '2.6.0',
     '2.7.0',
     '2.8.0',
     '2.8.1',
     '2.9.0' ],
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,没有比2.9.0已发布到npm存储库的版本更高的版本.奇怪的是,他们在GitHub上的版本高于此版本.我建议在这方面与维护者打开一个问题.

现在,您可以通过所需版本的tarball URL手动安装软件包:

npm install https://github.com/ionic-team/ionic-native/tarball/v3.5.0
Run Code Online (Sandbox Code Playgroud)


Bri*_*rij 21

我有一个可用的包的问题。强制清理缓存有帮助。

npm cache clean --force
Run Code Online (Sandbox Code Playgroud)

  • 如果没有“--force”,我收到消息:“从 npm@5 开始,npm 缓存通过将完整性不匹配视为缓存未命中来自我修复损坏问题。因此,从缓存中提取的数据保证是有效的。`但是通过强制清理缓存,问题仍然得到解决!警告中的大胆陈述就到此为止。 (3认同)
  • 也有帮助。似乎缓存损坏是 npm v7 上出现此错误的最可能原因。 (2认同)
  • 我有 npm 8.1.2,并尝试安装较新版本的 angualr cli,收到错误消息“找不到 debug@4.3.3 的匹配版本。”。这个命令有帮助。 (2认同)

Lai*_*Xue 12

尝试删除"package-lock.json"并运行"npm install && npm update",它将安装最新版本并清除所有错误.

  • 删除锁定文件就像将大多数软件包更新到最新的已知版本一样,这可能没有帮助,反而会通过安装不向后兼容的软件包来产生更多错误 (4认同)
  • 简单的答案,但有效=) (3认同)

Utm*_*tor 6

就我而言,我需要执行以下步骤:第一步已过时,因此可以跳过(最有可能)

npm cache clean --force
npm cache verify
npm uninstall yourPackage
npm uninstall -g yourPackage
Run Code Online (Sandbox Code Playgroud)

我的问题在这里描述

经过这些步骤后,应用程序已成功生成。