我刚开始学习cordova。我正在尝试开发跨平台的混合应用。但它出现了一个错误,当我添加android平台与cordova platform add android
。我不知道该怎么处理。
No version supplied. Retrieving version from config.xml...
npm http GET https://registry.npmjs.oorg/cordova-android/-/cordova-android-4.0.0.tgz
TypeError: Request path contains unescaped characters.
at new CLient Request (_http_client.js:73:10)
at Tunneling Agent.exports.request (http.js:49:10)
at TunnelingAgent.createSocket(C:UsersAdministratorAppDataRoamingnpmnode_modulescordovanode_modulescordova-libnode_modulesnpmnode_modulesrequestnode_modulestunnel-agentindex.js:117:25)
at TunnelingAgent.createSecureSocket [as createSocket] (C:UsersAdministratorAppDataRoamingnpmnode_modulescordovanode_modulescordova-libnode_modulesnpmnode_modulesrequestnode_modulestunnel-agentindex.js:184:41)
at TunnelingAgent.addRequest (C:UsersAdministratorAppDataRoamingnpmnode_modulescordovanode_modulescordova-libnode_modulesnpmnode_modulesrequestnode_modulestunnel-agentindex.js:80:8)
at new ClientRequest (_http_client.js:154:16)
at Object.exports.request (http.js:49:10)
at Object.exports.request (https.js:136:15)
at Request.start (C:UsersAdministratorAppDataRoamingnpmnode_modulescordovanode_modulescordova-libnode_modulesnpmnode_modulesrequestindex.js:594:30)
at Request.end(C:UsersAdministratorAppDataRoamingnpmnode_modulescordovanode_modulescordova-libnode_modulesnpmnode_modulesrequestindex.js:1186:28)
Node和CLI可能有bug。建议的解决方案是:
首先,配置代理设置:
npm config set proxy http://proxy.company.com:8080
npm config set https-proxy http://proxy.company.com:8080
将tunnel-agent
的内容替换为此zip - tunnel-agent
你必须找到你的tunnel-agent
文件夹在2个地方:
C:UsersAdministratorAppDataRoamingnpmnode_modulescordovanode_modulescordova-libnode_modulesrequestnode_modulestunnel-agent
和
C:Program Files (x86)nodejsnode_modulesnpmnode_modulesrequestnode_modulestunnel-agent
如果您在32位系统上找不到Program Files (x86)
,请检查Program Files
文件夹