使用npm在Windows 10中安装Phonegap

时间:2017-09-05 17:13:47

标签: phonegap phonegap-cli

当我尝试安装phonegap时出现错误。如果我使用管理控制台,我会得到相同的错误:

C:\Windows\system32>npm i -g phonegap
npm WARN deprecated connect@2.30.2: connect 2.x series is deprecated
npm WARN deprecated tough-cookie@2.2.2: ReDoS vulnerability parsing Set-Cookie https://nodesecurity.io/advisories/130
npm WARN deprecated node-uuid@1.4.8: Use uuid module instead
C:\Users\juand\AppData\Roaming\npm\phonegap -> C:\Users\juand\AppData\Roaming\npm\node_modules\phonegap\bin\phonegap.js
npm ERR! path C:\Users\juand\AppData\Roaming\npm\node_modules\phonegap\node_modules\nan\package.json
npm ERR! code EPERM
npm ERR! errno -4048
npm ERR! syscall unlink
npm ERR! Error: EPERM: operation not permitted, unlink 'C:\Users\juand\AppData\Roaming\npm\node_modules\phonegap\node_modules\nan\package.json'
npm ERR!     at Error (native)
npm ERR!  { Error: EPERM: operation not permitted, unlink 'C:\Users\juand\AppData\Roaming\npm\node_modules\phonegap\node_modules\nan\package.json'
npm ERR!     at Error (native)
npm ERR!   stack: 'Error: EPERM: operation not permitted, unlink \'C:\\Users\\juand\\AppData\\Roaming\\npm\\node_modules\\phonegap\\node_modules\\nan\\package.json\'\n    at Error (native)',
npm ERR!   errno: -4048,
npm ERR!   code: 'EPERM',
npm ERR!   syscall: 'unlink',
npm ERR!   path: 'C:\\Users\\juand\\AppData\\Roaming\\npm\\node_modules\\phonegap\\node_modules\\nan\\package.json' }
npm ERR!
npm ERR! Please try running this command again as root/Administrator.

npm ERR! A complete log of this run can be found in:
npm ERR!     C:\Users\juand\AppData\Roaming\npm-cache\_logs\2017-09-05T21_35_02_068Z-debug.log

C:\Windows\system32>node -v
v6.11.2

C:\Windows\system32>npm -v
5.4.0

npm版本升级,节点版本是最后6.x(LTS)。它似乎工作正常。

2 个答案:

答案 0 :(得分:0)

您好,您获得了nodejs的最新版本并更新了

npm install npm 

尝试一下如果有任何改变,我在win10上对我来说没问题,在debian jessie也一样。

答案 1 :(得分:0)

每次我遇到安装软件包的问题而且我的路径出错时,我只是直接去文件夹所在的位置并将其删除。在您的情况下,在C:\ Users \ juand \ AppData \ Roaming \ npm \ node_modules中查找PhoneGap文件夹。删除它并运行phonegap -v以确保您收到消息"' phonegap'不被识别为内部或外部命令,可操作程序或批处理文件"。现在你可以运行npm i -g phonegap,它将从头开始进程,你再也不会看到错误信息。发生这种情况是因为更新包时,可能会更改其内部文件夹的顺序,因此旧路径无法正常工作。干杯