ember-cordova构建Android应用出现Invalid or unexpected token错误如何解决
构建失败原因
- 核心原因是Cordova Android平台版本与
ember-cordova@1.0.9依赖的cordova-lib版本不匹配ember-cordova@1.0.9内置依赖的是8.x版本的cordova-lib,该版本最高仅兼容cordova-android@9.x。执行ember cdv:platform add android时默认会拉取最新的10.x及以上版本的Cordova Android平台,版本不兼容直接触发报错。 - 具体报错逻辑:
旧版本cordova-lib在构建准备阶段读取Android平台信息时,会直接通过require()加载Android平台目录下的可执行脚本,这类脚本头部带有#!/usr/bin/env node的Shebang声明,低版本cordova-lib没有对该声明做兼容过滤,导致Node.js将Shebang行识别为非法JavaScript语法,抛出Invalid or unexpected token语法错误。
内容的提问来源于stack exchange,提问作者Tomasz Józwik
相关产品推荐
相关产品推荐

