此构建系统用于将GitZip Pro Chrome扩展的源代码进行压缩、混淆,并生成生产版本。
source/- 源代码目录build/- 构建输出目录build.js- 构建脚本package.json- npm配置和脚本
构建脚本执行以下操作:
- 清理 - 删除旧的build目录
- 图标复制 - 复制所有图标文件
- JavaScript压缩 - 使用Terser压缩和混淆JavaScript文件
- CSS压缩 - 使用CleanCSS压缩CSS文件
- HTML压缩 - 使用html-minifier压缩HTML文件
- JSON处理 - 格式化JSON文件(如manifest.json)
- 其他文件 - 直接复制其他文件
npm installnpm run buildnpm run cleannpm run build这会自动运行prebuild脚本(即npm run clean)
- 压缩级别:高级压缩
- 混淆:启用(保留chrome、browser等全局变量)
- 移除debugger语句
- 保留console语句用于调试
- ECMAScript 2020兼容
- 级别2优化
- 兼容所有浏览器
- 折叠空白
- 移除注释
- 移除冗余属性
- 压缩内联CSS和JavaScript
构建后的文件位于build/目录,包含:
- 压缩后的JavaScript文件(
.js) - 压缩后的CSS文件(
.css) - 压缩后的HTML文件(
.html) - 格式化的manifest.json
- 图标文件(
icons/目录)
jszip.min.js已经是压缩版本,构建脚本会直接复制而不进行额外压缩- 构建脚本会保留必要的全局变量(如
chrome、browser、window等) - 如果压缩过程中出现错误,脚本会回退到直接复制源文件
- 构建过程会显示每个文件的压缩比例
要在Chrome中加载构建后的扩展:
- 打开Chrome,进入
chrome://extensions/ - 启用"开发者模式"
- 点击"加载已解压的扩展程序"
- 选择
build/目录
建议在发布新版本前:
- 更新
source/manifest.json中的版本号 - 运行
npm run build生成新版本 - 测试构建后的扩展
- 将
build/目录打包为ZIP文件用于发布