更新时间:2026-08-21 16:21:28 | 阅读:44 | 收藏:0 收藏 # 配置文件说明 > **读者**:需要自定义「打进包里有哪些文件」的客户。 > 本文说明 `.cspk.*.json` 的写法;不包含厂商如何编译本工具。 ## 文件名规则(必读) 本工具**只识别**符合以下规则的配置: - 文件名以 `.cspk.` 开头 - 以 `.json` 结尾(大小写不敏感) 合法示例:`.cspk.default.json`、`.cspk.release.json` 不会被当作本工具配置:`pack.json`、`a.json`、`.cspk.default.txt` 在项目目录运行交互菜单选 `1` 时,会扫描当前目录下的 `.cspk.*.json`。若一个都没有,会自动创建默认配置供你编辑。 ## 新建配置 交互菜单 → `1` → 输入 `n`,按提示输入名称(直接回车则为 `default`),生成例如 `.cspk.myapp.json`。 创建后请先编辑 `include` / `exclude` / `output_dir`,再执行打包。 也可用文本编辑器复制一份已有 `.cspk.*.json` 后改名、改内容。 ## 字段说明 ```json { "base_dir": "./", "output_dir": "./", "output_name": "release", "include": [ "." ], "exclude": [ ".git", "node_modules", "*.log", "*.sql", "runtime" ] } ``` | 字段 | 含义 | |------|------| | `base_dir` | 打包工作根目录,默认 `./`;相对路径相对**配置文件所在目录** | | `output_dir` | zip 输出目录;空则用当前工作目录;支持绝对路径与 `../out` 等相对路径(相对配置文件目录) | | `output_name` | 输出名前缀,默认 `release`;最终文件名为 `前缀_目录名_时间戳.zip` | | `include` | **必填**。要打进包的文件或目录列表;`" ." ` 表示当前 `base_dir` 下整棵树(再经 exclude 过滤) | | `exclude` | 排除规则;相对 `base_dir`(工作目录)匹配,也支持按文件名通配(如 `*.log`) | 补充行为: - 若 `output_dir` 落在 `base_dir` 内,打包时会自动把该输出目录加入排除,避免把刚生成的 zip 再打进包。 - 配置允许 `//` 行注释;请保持 JSON 结构合法(注意逗号)。 - `include` 里某个路径不存在时会打印警告并跳过,不会整次失败。 ## 编写建议 1. 先明确「发布物」应包含的目录/文件,写入 `include`;能列清单就不要无脑 `"."` 再靠大量 exclude。 2. 务必排除:`.git`、`node_modules`、日志、本地 `runtime`、数据库 dump、密钥与本机私有配置(按你的项目调整)。 3. 大项目建议把 `output_dir` 指到项目外(如 `../dist`),减少误打进包的风险。 4. 同一仓库可维护多份配置(开发包 / 发布包 / 仅前端等),用不同 `.cspk.*.json` 区分。 ## 最小示例:打当前目录 ```json { "base_dir": "./", "output_dir": "../out", "output_name": "release", "include": ["."], "exclude": [".git", "node_modules", "*.log", "runtime"] } ``` ## 最小示例:只打指定子目录 ```json { "base_dir": "./", "output_dir": "./", "output_name": "web", "include": [ "public", "apps/config.php" ], "exclude": [ "*.log" ] } ``` 相关文档: - [打包操作指南](/doc-40) - [Windows 使用指南](/doc-37) - [Linux / Mac 使用指南](/doc-38) 评论区