You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Google App Engine配置type为module仍报import语句错误

问题原因与解决方案

你遇到的报错本质是GAE运行环境将你的代码识别为CommonJS模块,不支持ES模块的import语法,即便本地配置正常,也大概率是GAE部署环节的配置遗漏导致,按优先级排查以下问题:

1. 检查GAE运行时的Node.js版本

ES模块的"type": "module"配置是Node.js v13.2.0之后才正式稳定支持的,若你GAE使用的 runtime 版本低于该值会直接触发报错。
请检查项目根目录下的app.yaml配置,确保runtime指定为14以上的LTS版本,示例正确配置:

runtime: nodejs18 # 推荐使用16/18/20等受支持的LTS版本

2. 检查.gcloudignore配置

很多开发者会在.gcloudignore中错误加入package.json匹配规则,导致部署时GAE环境没有拿到你的package.json文件,自然无法识别"type": "module"配置,只能默认将.js文件当做CommonJS解析。
打开.gcloudignore文件,删除所有匹配package.json的规则,确保该文件会被上传到GAE环境。

3. 兜底兼容方案

如果上述排查都没有解决问题,可以直接将所有使用ES模块语法的.js文件后缀改为.mjs,Node.js会强制将.mjs文件识别为ES模块,不需要依赖package.json的"type"配置即可正常运行。

内容的提问来源于stack exchange,提问作者Sam Dean

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 16:24:03