uniapp 自动打包
uniapp 自动打包方法
uniapp 支持通过命令行或 CI/CD 工具实现自动化打包,适用于 H5、小程序、App 等平台。以下是常见的自动打包方式:
H5 或小程序打包
使用 npm run build 命令触发打包,不同平台需指定参数:
# H5 打包
npm run build:h5
# 微信小程序打包
npm run build:mp-weixin
# 支付宝小程序打包
npm run build:mp-alipay
App 打包(云端或本地)

云端打包通过 cli publish 命令实现:
# 发布到云端打包
cli publish --platform android --project 项目路径
本地打包需配置原生工程环境(Android/iOS),通过 HBuilderX 命令行调用:
# 本地打包示例(需提前配置好原生环境)
cli pack --platform ios --project 项目路径 --output 输出目录
集成 CI/CD 流程
GitHub Actions 示例

name: Uniapp Build
on: push
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- run: npm install
- run: npm run build:h5
- uses: actions/upload-artifact@v2
with:
name: h5-build
path: ./dist/build/h5
Jenkins 配置
- 安装 Node.js 插件并配置环境
- 添加构建步骤执行
npm install和打包命令 - 使用归档插件保存
dist目录产物
自定义打包配置
在 package.json 中扩展脚本命令:
{
"scripts": {
"build:auto": "node build.js && cli publish --platform android"
}
}
创建 build.js 处理自定义逻辑:
const { execSync } = require('child_process');
execSync('npm run build:h5', { stdio: 'inherit' });
注意事项
- 云端打包需要配置
manifest.json中的 AppID 和证书信息 - 本地打包需确保已安装对应平台的 SDK(如 Android Studio 或 Xcode)
- CI 环境中需缓存
node_modules以提高构建速度 - 敏感信息(如证书密码)应使用环境变量管理






