Rust 项目中解决依赖重复编译问题:以 objc2 为例
开发桌面剪贴板同步应用(UniClipboard)时,遇到了一个棘手问题:即使修改非 objc2 相关代码,Rust 编译器仍不停重新编译 objc2 库,影响开发效率。问题描述了objc2编译耗时长、无谓重复编译和循环依赖。优化方案包括 Cargo 配置优化和使用sccache加速编译,提高构建效率。通过优化,首次构建时间略增加,但增量构建时间减少80%,开发体验得到改善。经验总结强调理解依赖关系、差异化处理、合理利用缓存和在速度与代码质量之间取舍。这些技巧适用于处理慢速编译依赖的 Rust 项目,提高开发效率及编码体验。