uniapp 自动打包
uniapp 自动打包实现方法
使用HBuilderX的自动化构建
HBuilderX是uniapp官方推荐的开发工具,内置自动化构建功能。在项目根目录下找到manifest.json文件,配置应用基本信息。通过HBuilderX顶部菜单栏选择"发行"->"原生App-云打包"或"本地打包",云打包无需配置环境,本地打包需提前配置好Android和iOS开发环境。
配置Jenkins持续集成
安装Jenkins并创建新任务,选择"构建一个自由风格的软件项目"。在源码管理部分配置Git仓库地址和凭证。添加构建步骤选择"执行shell"或"Windows批处理命令",根据操作系统编写打包脚本。
示例shell脚本:

#!/bin/bash
# 安装依赖
npm install
# 打包H5
npm run build:h5
# 打包Android
npm run build:android
GitHub Actions自动化
在项目根目录创建.github/workflows/build.yml文件,配置自动化工作流。示例配置如下:
name: Uniapp Build
on: [push]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Use Node.js
uses: actions/setup-node@v1
with:
node-version: '14.x'
- run: npm install
- run: npm run build:h5
- run: npm run build:android
自定义脚本打包
创建自定义打包脚本build.sh或build.bat,根据需求组合打包命令。可以包含版本号自动递增、打包时间记录等功能。

示例脚本片段:
# 获取当前时间作为构建版本
BUILD_TIME=$(date "+%Y%m%d%H%M")
sed -i "s/\"versionName\": \".*\"/\"versionName\": \"1.0.${BUILD_TIME}\"/g" manifest.json
使用Docker容器打包
创建包含所有打包环境的Docker镜像,确保环境一致性。编写Dockerfile安装Node.js、HBuilderX等必要工具。通过docker-compose编排多个构建环境。
基础Dockerfile示例:
FROM node:14
WORKDIR /app
COPY package.json .
RUN npm install -g @vue/cli
RUN npm install
COPY . .
CMD ["npm", "run", "build:android"]
注意事项
不同平台打包需要对应证书和配置文件。Android需要keystore文件,iOS需要p12和mobileprovision文件。云打包每日有次数限制,重要项目建议使用本地打包方案。自动化打包建议加入构建结果通知机制,如邮件或钉钉机器人提醒。






