首页 > 解决方案 > 衍生进程中的网络访问失败

问题描述

我正在尝试cordova prepare像这样生成(获取和安装cordova项目依赖项):


Promise.all([
  fs.ensureDir('cordova/plugins'),
  fs.ensureDir('cordova/www'),
])
  .then(() => runCmd('cordova prepare', {cwd: './cordova'}));


function runCmd(cmd: string, options?: SpawnOptions): Promise<void> {
  const [theCmd, ...args] = cmd.split(' ');
  return new Promise((resolve, reject) => {
    const childProcess = spawn(theCmd, args, options);
    childProcess.stdout.on('data', data => console.log(data.toString()));
    childProcess.stderr.on('data', data => console.error(data.toString()));
    childProcess.on('close', code => code === 0 ? resolve() : reject(cmd + ' errored with code ' + code));
  });
}

但它失败了:

在 config.xml 或 package.json 中发现平台“ios@^5.0.1”。将其添加到项目中

将 cordova-fetch 用于 cordova-ios@^5.0.1

错误:无法获取平台cordova-ios@^5.0.1 这可能是连接问题,或者平台规范不正确。检查您的连接和平台名称/版本/URL。错误:npm:命令失败,退出代码 1 错误输出:npm ERR!达尔文 19.0.0 npm 错误!argv "/Users/Birowsky/.nvm/versions/node/v10.16.3/bin/node" "/Users/Birowsky/Projects/Personal/GotaGuy/gotaguy-frontend/node_modules/.bin/npm" "安装" "cordova -ios@^5.0.1" "--production" "--no-save" npm 错误!节点 v10.16.3 npm 错误!npm v2.15.12

npm 错误!无效版本:“0”npm ERR!npm 错误!如果您需要帮助,您可以在以下位置报告此错误:npm ERR!
https://github.com/npm/npm/issues

npm 错误!请在任何支持请求中包含以下文件:npm ERR!
/Users/Birowsky/Projects/Personal/GotaGuy/gotaguy-frontend/cordova/npm-debug.log

我可能以错误的方式产生它吗?

标签: node.jscordovanpmprocessspawn

解决方案


cordova在我的package.json哪个取决于cordova-lib哪个取决于一个非常旧的版本npm

我安装了最新版本,npm问题消失了:/


推荐阅读