Phonegap安装错误(npm)

我一直在寻找两天的解决scheme来在我的Windows 8.1系统上设置Phonegap而没有任何成功。

每当我尝试通过npm安装Phonegap,我得到一个我认为与cordova(-lib)有关的错误。

要安装Phonegap,我必须在我的系统上安装Node.js(v0.10.28)。 在此之后,我打开了Windows Powershell,并按照Phonegap网站上的说明发布了以下命令:

npm install -g phonegap 

输出:(这是错误的唯一部分)

 error notarget No compatible version found: cordova-lib@'lorinbeer/cordova-lib.git#configparser_module' error notarget Valid install targets: error notarget ["0.21.2","0.21.3"] error notarget error notarget This is most likely not a problem with npm itself. error notarget In most cases you or one of your dependencies are requesting error notarget a package version that doesn't exist. 

我也尝试通过npm安装Cordova,然后安装Phonegap,但是这也没有解决任何问题。

用pipe理员权限运行Powershell也没有帮助,并尝试解决设置PhoneGap的问题的其他人的解决scheme,但没有任何工作。

我真的希望有人能帮助我。

提前致谢。

我昨天有同样的问题。 如果您检查npm-debug.log,您会注意到当npm尝试访问cordova-lib git存储库url时存在权限问题(“权限被拒绝”)。 实际上,cordova-lib是phonegap的依赖。 所以,它不能安装它,我想这就是为什么你得到这个错误。

所以,我试过这个:首先安装cordova-lib,然后是Phonegap。 然而,它仍然是行不通的。 npm似乎没有检查是否在尝试这样做之前是否安装了cordova-lib。 在这一点上,我可以做的是更改它从中检索cordova-lib的存储库。 以下是NPM安装语法:

 npm install <tarball file> npm install <tarball url> npm install <folder> npm install <pkg> npm install <pkg>@<tag> npm install <pkg>@<version> npm install <pkg>@<version range> 

这意味着我可以从tar.gz文件安装。 大! 所以,我只是去这个页面https://www.npmjs.org/package/phonegap检查phonegap存储库,并执行这些步骤&#xFF1A;

  1. 下载phonegap-cli回购( https://github.com/phonegap/phonegap-cli/archive/master.zip
  2. 解压缩
  3. 打开package.json文件并在依赖关系中查找cordova-lib条目(第32行)
  4. 将该值更改为最后一个版本的0.21.3。
  5. 将该文件夹的存档重新创建为tar.gz格式
  6. 打开你的CLI并运行这个命令:

     npm install -g path/to/archive/phonegap-cli-master.tar.gz 

它应该现在工作。

希望有所帮助!

下载旧版本。 我认为新的有一个问题

 npm install -g phonegap@3.4 

我试过这个,为我工作。

即使在洛伦佐说应该没问题的时候,我今天在Mac上也遇到类似的问题。 只是运行这个:

 sudo npm install -g phonegap 

…产生了这样的错误负载:

 error: file ./objects/pack/pack-48c0ff4147fb7e8922546c4a857b98a1cb48e01f.pack is far too short to be a packfile 

我结合洛伦佐和阿尔潘沙阿的解决方案:

 sudo npm install -g phonegap@3.4 sudo npm cache clean sudo npm update -g phone gap 

…似乎神奇的工作。

问题

我们发布了对cordova-lib的一个分支的依赖。 当大量的请求通过(我认为)时,这个分支似乎不可用。 无论如何,这是不可靠的。 将相关性更改为0.21.3将导致命令失败,但将允许安装。

解决方案

  1. 更新'cordova-lib'依赖关系到npm发布的版本'0.21.3'**注意,这将允许安装,但其他phonegap命令将失败

  2. 等待大概20分钟,然后npm更新-g phonegap测试更新来解决这个问题

进一步更新

更新我们推送了版本3.5.0-0.20.3,这应该可以解决这个问题

 $ npm update -g phonegap 

如果这不起作用,请尝试

 $ npm cache clean 

并重新安装phonegap

我尝试了以上comamnds npm缓存清除并重新安装phoegap。 它下载了所有的库而不是命令行脚本(phonegap命令还有3.4版本)。 我发现最好是给命令:npm install -g cordova(v 3.5)!