引言
哈喽大家好,我是亿元程序员,一位有着 8 年游戏行业经验的主程。
最近私信里出现频率最高的,不是报错截图,是压缩包。
亿哥,工程打不开了,我把项目打包发给你看看。
接着弹进来一个文件:
下完解压,assets 才几十兆。剩下全是 library、temp、build。
都不知道说过多少次了:
library、temp、build,不要打包,不要打包,不要打包!
看来还是有很多小伙伴对 Cocos 的工程目录不了解,导致发给别人的不是工程,而是一个流量炸弹。
言归正传,本期跟着笔者来看看 Cocos 的项目结构是怎样的,怎么打包最简便。
本文示例工程在文末获取,小伙伴们自行前往。
Cocos 项目里,这些文件夹到底是干什么的?
一个 Cocos Creator 3.x 工程,怎么才能被编辑器识别?
最低配置其实就两样:assets + package.json。
打开之后,它还会自己生成 library、temp、local,看起来都像项目的一部分,其实分两种:
- 你写出来的:源码、资源、配置。丢了就没了。
- 编辑器生成的:缓存、临时文件、构建产物。删了再打开或者重新构建,它自己会再生成。
流量炸弹通常就出在第二种,打包五分钟,下载两小时。
1. 必须带走(别人才能打开)
| 路径 | 人话 |
|---|---|
assets/(含全部 .meta) | 最重要,日常 99% 在这里干活 |
package.json | 项目标识文件,引擎靠它识别这是 Cocos 项目 |
settings/ | 项目设置,通常是分组等配置,极限可忽略 |
tsconfig.json | TS 语法 / 类型配置,极限可忽略 |
2. 不要打包(删了还能再生成)
| 路径 | 为什么能扔 |
|---|---|
library/ | 导入缓存,打开工程会重建,通常最大 |
temp/ | 临时文件 |
local/ | 你的窗口布局,带去只会污染别人编辑器 |
build/ | 构建产物,那是「发布包」不是「源工程」 |
node_modules/ .git/ | 依赖(要保留声明)和版本库,别塞进分享包 |
3. 根据具体情况(都行)
| 路径 | 干嘛的 |
|---|---|
extensions/ | 项目自己的扩展,有则留 |
profiles/ | 构建配置、编辑器通用配置 |
native/ | 原生部分内容,如果有需要保留 |
.gitignore | git 忽略清单 |
.codex/ .cursor/ .claude/ | AI 编程工具(Codex / Claude Code / Cursor )的中间产物 |
以上就是 Cocos 3.8.7 的核心目录讲解,小伙伴们可以通过官方文档深入了解。
总结:
| 分类 | 建议内容 |
|---|---|
| 最低识别条件 | assets/、package.json |
| 精简工程默认保留 | assets/、settings/、package.json、tsconfig.json |
| 按项目保留 | extensions/、profiles/、native/、依赖锁文件、项目自定义文件 |
| 默认排除 | library/、temp/、local/、build/、node_modules/、.git/ |
| 检查后决定 | .codex/、.cursor/、.claude/ 及包含账号、密钥、本机路径的配置 |
那怎么打包最简便?
目录搞懂了,压缩就三步:必须带走的留下,不要打包的扔掉,剩下的按情况取舍。
1. 方法一:手动删除后压缩
了解每个目录的作用之后,我们就可以手动打包了:
- 关掉 Creator,避免文件占用。
- 复制一份工程,避免误删。
- 必删:
library、temp、local、build、node_modules。 - 选删:
profiles、native、没有用到的扩展,按上一节自行决定。 - 右键剩余内容打 zip,发给别人。
2. 方法二:压缩后再删除
有个小技巧比方法一安全:
- 先打 zip。
- 打开 zip 删掉不要的。
但是问题来了:这事你会,但你会烦。
- 每打包一次,就重复一次。
- 手滑删了
assets或package.json,工程直接废。 - 漏删一个
library,zip 又回到快 1G,打包五分钟,下载两小时。
3. 方法三:一键导出精简工程 ZIP
重复性工作就不该靠记忆力。于是我写了一个扩展。
怎么用?
菜单栏 → 项目 → 导出精简工程 ZIP → 选保存位置 → 保存。
默认文件名是 {项目名}-min.zip。解压出来是一个完整工程文件夹,对方用同版本 Creator 打开即可。
流程就四步:
- 读当前打开工程的根目录(
Editor.Project.path)。 - 根目录下,只扫描白名单里的文件夹和文件。
- 递归打包时,遇到排除名单里的目录名,直接跳过。
- 写 zip,根目录用项目名包一层,避免解压后文件散落。
核心代码比较简单:
效果就是:原来打包五分钟、下载两小时;现在核心几十兆,微信里传完就能开。
插件放哪?
路径如下:
%USERPROFILE%\.CocosCreator\builtin-extensions\3.8.7\export-min-project
Windows 举例:
C:\Users\你的用户名\.CocosCreator\builtin-extensions\3.8.7\export-min-project
放进去之后:
- 完全退出 Creator,再重新打开。
- 打开任意工程,菜单 项目 里就能看到 导出精简工程 ZIP。
为什么放这里? 前面的文章讲过, %USERPROFILE%\.CocosCreator\builtin-extensions\3.8.7\ 是 Creator 3.8.7 的用户级内置扩展目录。放进去后,所有 3.8.7 工程都能用,不用每个项目拷一份。
当然也可以只给单个项目用:把 export-min-project 文件夹放到该工程的 extensions/ 目录下,只对当前项目生效。
结语
问题来了,小伙伴们收到/给出的最大的工程包多大? 评论区告诉大家你的数字。
本文实例工程可通过私信发送“打包工程”获取。
更多实战完整源码包含编辑器已集成到亿元Cocos小游戏实战合集(已完结),感谢小伙伴们对创作的支持。
我是"亿元程序员",一位有着8年游戏行业经验的主程。在游戏开发中,希望能给到您帮助,也希望通过您能帮助到大家。
实不相瞒,想要个赞和爱心!请把该文章分享给你觉得有需要的其他小伙伴。谢谢!
推荐文章: