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

如何为pkg CLI配置Babel以解决ES6语法解析失败问题?

解决pkg打包ES6脚本时的importAssertions语法错误

步骤1:安装必要依赖

确保项目已安装@babel/core和@babel/plugin-syntax-import-assertions,pkg需要这些依赖来解析实验性的导入断言语法:

npm install @babel/core @babel/plugin-syntax-import-assertions --save-dev

步骤2:配置pkg加载Babel插件

有两种配置方式,任选其一即可:

方式一:在package.json中嵌入pkg配置

打开项目根目录的package.json,添加pkg字段,指定Babel插件:

{
  "name": "api_server",
  "type": "module",
  // 保留原有字段...
  "pkg": {
    "babel": {
      "plugins": ["@babel/plugin-syntax-import-assertions"]
    }
  }
}

方式二:使用独立的pkg配置文件

在项目根目录创建pkg.config.json,内容如下:

{
  "babel": {
    "plugins": ["@babel/plugin-syntax-import-assertions"]
  }
}

打包时通过--config参数指定该文件:

npx pkg index.js -o test --config pkg.config.json

步骤3:重新执行打包

运行打包命令:

npx pkg index.js -o test

此时pkg会调用指定的Babel插件解析导入断言语法,不再抛出解析失败的警告。

额外提示

  • 若已有.babelrc或babel.config.json,可直接让pkg复用该配置,无需重复声明插件:
    "pkg": {
      "babel": "./.babelrc"
    }
    
  • 确认package.json中的type字段设置为module,与脚本的ES模块类型保持一致。

内容的提问来源于stack exchange,提问作者Daniel B

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.07 07:37:12