Delphi Tokyo 10.2 需要在从 repo 更新代码后重建整个项目

Delphi Tokyo 10.2 needs rebuild of whole project after code update from repo

我对 Delphi 东京的行为感到非常沮丧。我已经从 Delphi Xe7 转移,另一个令人沮丧的错误(内存不足)消失了(或者直到现在),但出现了一个新错误。

当我通过代码库更新我的项目时,通常需要重建整个项目。如果不是因为整个应用程序重建需要 2-3 小时(在 2 台不同的机器上,所以它不是特定于机器的设置)这一事实,那也不会那么糟糕。在 Xe7 中我从来没有遇到过这个问题。 奇怪的是,当我拉取更新时一切似乎都很正常,我可以解决我所有的使用 classes(witr Ctrl + 左键单击 class)。但是,当我在几秒钟后尝试编译时,我收到随机错误消息,指出 class、常量或任何无法解析的内容(即使我仍然可以单击它并解析它)。然后我需要构建 bpl 并且它再次工作

我可以在 RAD Studio 中设置什么来避免这种情况发生吗? 问题也是,我什至没有弄清楚是哪个更新(包含的.bpls)导致了这个问题

我偶尔也会遇到这个问题,只有重建才能帮助我们处理 300 万行代码库。 虽然遗憾的是我无法为您提供需要重建的真正解决方案,但我可以说在清除单元依赖关系后它发生的次数更少并且构建速度更快。 一些大单元仍然会导致问题,但在解决了许多循环单元依赖关系并将大单元整体重构为较小单元后,它变得明显更好。

例如,您可以使用 Delphi Unit Dependency Scanner 来分析您的依赖关系并轻松识别循环引用。

我还可以推荐看一下 IDE Fix Pack,这可以加快您的构建时间。

IDE Fix Pack is a collection of unofficial bug fixes and performance optimizations for the RAD Studio IDE, Win32/Win64/Andoird-ARM compiler and Win32 debugger.

IDE Fix Pack is an IDE plugin for RAD Studio 2009-10.3 that fixes IDE bugs at runtime. All changes are done in memory. No files on disk are modified. None of your projects are modified or benefit from the IDE Fix Pack other than being compiled faster. Only the IDE gets the fixes and optimizations.

The performance optimizations let the IDE start faster, open projects faster, optimizes the compiler’s file search algorithm, makes CodeInsight, the actual compilation and the debugger faster. It also fixes some IDE, compiler and debugger memory leaks.

fastdcc applies the Compiler Speed Pack that is included in IDE Fix Pack on the command line compiler dcc32, dcc64 and dccaarm (XE6 and newer).

我们的 300 万行代码构建时间不到 2 分钟。