我对整个德尔福生态系统非常陌生。我正在使用 Rad Studio XE2。
假设我有一个非常简单的案例。
项目 A、B 和 C。C 依赖于 B。B 依赖于 A。
这也是我使用“项目依赖项”IDE GUI 设置依赖项的方式。
C 是生成可执行文件的项目。它被设置为“当前项目”。
如果我修改项目 B 中的文件并按 F5(运行),我希望只有项目 B 和 C 可以编译。
但是项目 A 总是重建!!即使我修改项目 C 中的源文件也是如此。
难道我做错了什么?如果是这样,关于它可能是什么的任何想法?
或者这只是 IDE 的工作方式?
客户拥有大量遗留代码库并使用 XE2。目前,他们通过右键单击需要重新编译的最低项目并选择“从这里构建...”来手动处理依赖项目的重新编译。
当我发现 XE2 中的“项目依赖”功能时,我认为这将是解决这个问题的方法。
* 编辑 *
行。我会尝试更好地解释这一点,因为我看到我的问题/担忧并没有真正得到解决。
我有一个 groupproject,它由许多 BPL 项目(据我了解输出一个 DLL)和一个可执行项目:C.exe 组成。
C.exe 引用所有 BPL 项目,包括 A.BPL 和 B.BPL。现在,如果我修改任何 BPL 项目中的代码并执行“运行”,C.exe 将启动,但我刚刚所做的更改不会生效,因为 BPL 项目没有重新编译。这其实是我的痛点。到目前为止,我使用的所有 IDE 也会重新编译依赖的 dll。当然,假设项目设置正确。现在回答我的问题。我不知道项目是否设置不正确,或者这是否是 IDE 的限制。如果我右键单击修改后的 BPL 项目并选择“从这里编译”,然后执行“运行”,我的更改将生效。但是,当我习惯于只运行可执行文件而不必担心重新编译依赖项时,必须这样做是很烦人的。
如上所述,我确实尝试使用 IDE 的“依赖项”功能。然而,这种行为很奇怪(对我来说)。即使源代码没有被修改,它也会重新编译依赖项。