Flutter Windows桌面环境下恢复生产环境的objectbox-model.json并提交至VCS
解决Flutter Windows项目ObjectBox模型文件丢失问题
一、在生产环境定位ObjectBox数据库文件
Flutter Windows应用的ObjectBox数据库默认存储在用户私有数据目录,路径通常为:
C:\Users\<用户名>\AppData\Roaming\<应用包名>\objectbox
其中<应用包名>对应你Flutter项目pubspec.yaml里的name字段,或是打包时配置的应用标识符。- 若代码中自定义了数据库存储路径(比如通过
Store(directory: 自定义路径)设置),则直接定位到该自定义路径即可。
在这个目录下,你会找到data.mdb和lock.mdb两个核心数据库文件,这是后续生成适配模型文件的关键。
二、从生产数据库生成适配的objectbox-model.json
借助ObjectBox CLI工具,可从现有数据库反向生成匹配的模型文件:
- 安装ObjectBox CLI:
打开终端执行命令:dart pub global activate objectbox_cli - 导出模型文件:
先停止生产环境的应用(避免数据库文件被占用),复制出data.mdb文件,再在终端执行:
替换路径后执行,就能生成与生产数据库完全适配的objectbox model export --db-path="你的data.mdb文件路径" --output="objectbox-model.json"objectbox-model.json文件。
三、将模型文件持久化到Git版本控制
- 将生成的
objectbox-model.json放到Flutter项目根目录(与pubspec.yaml同级)。 - 检查项目的
.gitignore文件,删除任何忽略objectbox-model.json的规则(如果之前有添加的话)。 - 执行Git命令提交文件:
git add objectbox-model.json git commit -m "提交匹配生产数据库的ObjectBox模型文件" git push - 后续开发规范:所有实体类的修改都会自动更新该模型文件,每次变更都要同步提交到Git,确保开发环境与生产环境的模型一致性。
四、后续开发注意事项
- 后续修改实体类时,ObjectBox会自动更新
objectbox-model.json,必须同步提交该文件到Git,避免团队成员或生产环境出现模型不兼容问题。 - 升级ObjectBox版本前,先确认新版本与当前模型文件的兼容性,再执行升级操作。
内容的提问来源于stack exchange,提问作者Qing Wang
相关产品推荐
相关产品推荐

