【发布时间】:2014-01-20 16:27:50
【问题描述】:
我正在尝试通过
向 Cordova 添加一个插件cordova plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git
git 本身似乎运行良好。运行以下工作:
git clone "https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git" "D:\Temp\plugman-tmp1390234462383"
这就是 plugins.js 第 43 行中使用的内容(var cmd = util.format(...))。
我使用 cordova 插件 add ... 收到的错误是:
Calling plugman.fetch on plugin "https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git"
Fetching plugin from "https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git"...
Fetching plugin via git-clone command: git clone "https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git" "D:\Temp\plugman-tmp1390235833828"
C:\Users\myUser\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:126
throw e;
^
Error: Fetching plugin failed: Error: Command failed: Cloning into 'D:\Temp\plugman-tmp1390234462383'...
fatal: unable to access 'https://git-wip-us.apache.org/repos/asf/cordova-plugin-device.git/': Failed connect to git-wip-us.apache.org:443; No error
at C:\Users\myUser\AppData\Roaming\npm\node_modules\cordova\src\plugin.js:90:41
at _rejected (C:\Users\myUser\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:808:24)
at C:\Users\myUser\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:834:30
at Promise.when (C:\Users\myUser\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:1079:31)
at Promise.promise.promiseDispatch (C:\Users\myUser\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:752:41)
at C:\Users\myUser\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:574:44
at flush (C:\Users\myUser\AppData\Roaming\npm\node_modules\cordova\node_modules\q\q.js:108:17)
at process._tickCallback (node.js:415:13)
有什么想法吗?
更多信息:
我正在通过代理,但我为 git 和 npm 设置了这个。我通过“npm install cordova”安装了Cordova,通过“cordova create TestApp”安装了项目,通过“cordova platform add android”添加了平台,我可以在模拟器上运行应用程序。
我什至尝试过“phonegap local plugin add https...”,结果相同。
我缺少的就是添加插件。
【问题讨论】:
-
您能否运行带有
-d标志的cordova plugin add命令以获得更多输出并查看错误消息是否有所改善?你可以尝试做cordova plugin add org.apache.cordova.device-motion看看它是否不同(使用插件名称而不是实际的 git url)。另外,尝试删除\cordova` folder inside yournode_modules` 文件夹。这将清除“cordova 缓存”,当 npm 出现升级和/或问题时,有时会搞砸(上周服务器有点傻。)最后,为什么你的临时驱动器在D://但你的命令在C://? -
我在输出中添加了额外的行,基本上是前三行(调用 plugman.fetch....)
-
"cordova plugin add org.apache.cordova.device-motion" 抛出 ETIMEDOUT
-
我已将所有 TEMP 路径变量设置为 D:\Temp 并且用户目录仍在 C:/Users/...
-
我遇到了同样的问题。请参阅 here 了解适合我的解决方案。