如何修复npm run asbuild执行时的SyntaxError与ELIFECYCLE错误?
AssemblyScript构建报错:SyntaxError: missing ) after argument list 修复方案
问题详情
执行AssemblyScript项目初始化与构建流程时触发报错,操作步骤如下:
npm install --save-dev assemblyscript npx asinit . Y npm run asbuild
核心报错
SyntaxError: missing ) after argument list
at Loader.moduleStrategy (internal/modules/esm/translators.js:149:18)
npm生命周期错误日志片段
10 silly lifecycle @~asbuild: Args: [ '/d /s /c', 'npm run asbuild:debug && npm run asbuild:release' ] 22 error @ asbuild: `npm run asbuild:debug && npm run asbuild:release` 22 error Exit status 1
环境参数:
- Node.js v14.21.3
- npm v6.14.18
- Windows 10 19044
修复方案
1. 适配Windows命令行的脚本语法
Windows CMD不支持&&作为命令串联符,需修改package.json中的构建脚本:
打开项目根目录的package.json,找到scripts区块,将:
"asbuild": "npm run asbuild:debug && npm run asbuild:release"
替换为以下任一写法:
- 使用CMD兼容的
&:
"asbuild": "npm run asbuild:debug & npm run asbuild:release"
- 使用PowerShell执行(更可靠):
"asbuild": "powershell -Command \"npm run asbuild:debug; npm run asbuild:release\""
修改后重新执行npm run asbuild。
2. 升级Node.js版本
Node.js v14对ES模块的支持存在兼容性问题,AssemblyScript新版本依赖更高版本的Node环境。建议升级至Node.js v16+ LTS版本,之后执行:
rm -rf node_modules package-lock.json npm install npm run asbuild
3. 安装兼容Node v14的AssemblyScript版本
若无法升级Node,可指定安装与Node v14兼容的AssemblyScript旧版本(如0.20.x系列):
npm uninstall --save-dev assemblyscript npm install --save-dev assemblyscript@0.20.17 npx asinit . npm run asbuild
内容的提问来源于stack exchange,提问作者No_Moooon
相关产品推荐
相关产品推荐

