Visual Studio多设备混合无法获取包信息错误

时间:2014-11-04 21:46:11

标签: javascript android node.js cordova multi-device-hybrid-apps

我已经安装了visual studio扩展程序Multi-device hybrid,一切都很好,除非我运行任何启用了Cordova插件的新项目,例如电池状态。我收到了以下错误消息。但是,如果我删除或禁用所有插件,它可以正常工作。有没有人知道下面的错误转储或之前遇到过同样的问题?感谢。

错误消息

无法获取org.apache.cordova.battery-status的包信息C:\ Mobile \ CordovaApp \ CordovaApp \ EXEC 1 1 CordovaApp

Visual Studio输出

------ Adding plugin: org.apache.cordova.battery-status
1>  Calling plugman.fetch on plugin "org.apache.cordova.battery-status"
1>  
1>  C:\Users\myuser\AppData\Roaming\npm\node_modules\vs-mda\node_modules\q\q.js:126
1>                      throw e;
1>                            ^
1>EXEC : error : Failed to fetch package information for org.apache.cordova.battery-status
1>      at C:\Users\myuser\AppData\Roaming\npm\node_modules\vs-mda\node_modules\cordova\node_modules\cordova-lib\src\plugman\registry\registry.js:32:20
1>      at Request.cb [as _callback] (C:\Users\myuser\AppData\Roaming\npm\node_modules\vs-mda\node_modules\cordova\node_modules\cordova-lib\src\plugman\registry\registry.js:251:9)
1>      at self.callback (C:\Users\myuser\AppData\Roaming\npm\node_modules\vs-mda\node_modules\cordova\node_modules\cordova-lib\node_modules\request\index.js:148:22)
1>      at Request.emit (events.js:117:20)
1>      at ClientRequest.self.clientErrorHandler (C:\Users\myuser\AppData\Roaming\npm\node_modules\vs-mda\node_modules\cordova\node_modules\cordova-lib\node_modules\request\index.js:257:10)
1>      at ClientRequest.emit (events.js:95:17)
1>      at Socket.socketErrorListener (http.js:1551:9)
1>      at Socket.emit (events.js:95:17)
1>      at net.js:440:14
1>      at process._tickCallback (node.js:419:13)
1>C:\Users\myuser\AppData\Roaming\npm\node_modules\vs-mda-targets\Microsoft.MDA.targets(99,5): error MSB3073: The command ""C:\Users\myuser\AppData\Roaming\npm\node_modules\vs-mda\vs-cli" build --platform "Android" --configuration "Debug" --projectDir . --projectName "CordovaApp" --language "en-US" --buildServerUrl "" --buildTarget "AndroidEmulator"" exited with code 8.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========

2 个答案:

答案 0 :(得分:0)

我通过下载插件本身并将文件夹添加到我的项目中找到了解决方法。 首先在根项目文件夹下创建一个名为“plugins”的新文件夹,然后将下载的插件(C:\ myfile \ cordova \ plugins \ org.apache.cordova.battery-status)复制到项目的plugins文件夹下。建立。

答案 1 :(得分:0)

对于Plugman上的设置代理设置,您必须创建一个" config"文件(没有扩展名)在 C:\ Users \ -youruser- \ .plugman 文件夹中,因为插件无法获得自己的npm代理设置。

此配置文件与npm config:

的.npmrc文件相同
proxy = http://username:passwords@proxyaddress:port#
https-proxy = http://username:passwords@proxyaddress:port#

set proxy的另一种方法是通过控制台:

plugman config set proxy http://username:passwords@proxyaddress:port#

此问题在jira for plugman中进行了跟踪。 There is no way to set a proxy for plugman