使用shell脚本实现客户端应用自动化打包——mac

本文介绍了前端开发者如何通过学习shell命令,实现mac平台下使用shell脚本代替package工具进行nw.js客户端应用的自动化打包。详细讲解了配置文件config.json的设置,包括安装包名称、应用版本、源代码路径、nw.js版本等关键参数,并展示了具体的打包脚本package.sh的执行流程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于公司业务拓展,需要实现客户定制化,即自己上传必要的文件即可生成自己的安装包,这就需要实现自动化打包,打包脚本选择了shell脚本,可能会有人问为什么不用python呢?因为不会python啊 大哭

作为一个前端开发人员,让写自动化脚本,最开始还是一脸懵逼的,但是没办法啊,还是得硬着脸皮上啊,于是到网上找各种资料,学习了一下shell常用命令,然后便开始研究了,因为平时mac打包用的是package工具,所以得整理一下使用工具打包的过程是怎样的,然后再思考如何用脚本来替代工具所做的步骤。客户端开发的框架是用的nw.js+angular,所以得在nw.js的打包原理上入手。终于在github找到了开源项目nwjs-shell-builder。研究了一天脚本,然后就尝试着开始自己打包了。

首先需要做的就是配置文件config.json,该文件是配置打包时需要进行替换的相关信息

其中name字段是用来定义安装包的名称,applicationName是用来配置应用名称,version是用来配置应用版本,src表示的是源代码的路径,nwjsVersion表示的是nwjs的版本,osxIconPath表示的是应用图标,faviconIconPath表示的是任务栏图标,license表示的是用户许可协议,CFBundleIdentifier表示的bundleID,后面的则表示在应用中需要替换的样式,应用logo等。

接下来就是开始打包了,首先获取配置文件的路径,并根据配置文件中的key获取对应的value,定义临时打包文件夹,安装包存放位置,以下就是打包的脚本,给该脚本命名为package.sh

#!/usr/bin/env bash
# Exit on error
set -e
BUILD_DIR=`pwd`
WORKING_DIR="${BUILD_DIR}/TMP"
RELEASE_DIR="${BUILD_DIR}/releases"
DIST_DIR="${RELEASE_DIR}/build"
# 配置文件config.json的路径
CONFIG_FILE="${BUILD_DIR}/config.json"
# 根据key获取value方法封装
get_value_by_key() {
    JSON_FILE=${CONFIG_FILE}
    KEY=${1}
    # REGEX="\"([^\"]*)\""
    JSON_VALUE=$(cat ${JSON_FILE} | jq .${KEY} | sed 's/\"//g')
    echo "${JSON_VALUE}"
}
# Name of 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值