当我将 android 平台添加到我的 cordova 项目时发生错误。希望有人能给我一点推动
An error occured when I add android platform to my cordova project. Hope someone could give me a little push
我是 cordova 的新手。我正在尝试构建跨平台混合应用程序。但是当我用 cordova platform add android
添加 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:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.js:117:25)
at TunnelingAgent.createSecureSocket [as createSocket] (C:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.js:184:41)
at TunnelingAgent.addRequest (C:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.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:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\index.js:594:30)
at Request.end(C:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\index.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
用这个 zip 替换 tunnel-agent
的内容 - tunnel-agent
您必须在 2 个位置找到您的 tunnel-agent
文件夹:
C:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\request\node_modules\tunnel-agent
和
C:\Program Files (x86)\nodejs\node_modules\npm\node_modules\request\node_modules\tunnel-agent
如果您使用的是 32 位系统并且找不到 Program Files (x86)
,请检查 Program Files
文件夹
我是 cordova 的新手。我正在尝试构建跨平台混合应用程序。但是当我用 cordova platform add android
添加 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:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.js:117:25)
at TunnelingAgent.createSecureSocket [as createSocket] (C:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.js:184:41)
at TunnelingAgent.addRequest (C:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\node_modules\tunnel-agent\index.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:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\index.js:594:30)
at Request.end(C:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\npm\node_modules\request\index.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
用这个 zip 替换 tunnel-agent
的内容 - tunnel-agent
您必须在 2 个位置找到您的 tunnel-agent
文件夹:
C:\Users\Administrator\AppData\Roaming\npm\node_modules\cordova\node_modules\cordova-lib\node_modules\request\node_modules\tunnel-agent
和
C:\Program Files (x86)\nodejs\node_modules\npm\node_modules\request\node_modules\tunnel-agent
如果您使用的是 32 位系统并且找不到 Program Files (x86)
,请检查 Program Files
文件夹