【发布时间】:2010-11-11 06:52:19
【问题描述】:
假设我有一个 C++ 项目,该项目分为几个子项目。子项目都生成一个 DLL,并且不同的开发团队在每个子项目上工作。现在如果我想构建主项目,有没有办法避免自己构建所有子项目?
简而言之,我正在寻找以与 Maven 对 Java 类似的方式进行依赖管理(即二进制文件和头文件)的东西。
事实上,我尝试为此使用 Maven,但这相当麻烦,因为我必须经常手动创建包,Maven 错过了获取最新更改的机会。此外,运行编译有点麻烦,因为我必须从 Maven 中调用 NAnt(我使用 NAnt 的功能直接构建 Visual Studio 解决方案)。
关于如何做到这一点的任何提示和想法?
【问题讨论】:
-
使用 make 时的问题是我必须至少构建一次所有内容,因此还需要依赖项的源文件。尤其是在重建依赖库时,可能会非常耗时并严重影响生产力。还是我错过了什么?
-
这似乎是一个有用的问题。也许这个问题可以移植到另一个更欢迎这些问题的站点?我正在寻找 C++ 依赖管理的最佳实践。
-
这已经晚了大约 10 年,所以这里有 3 种可能性:你误用了
maven,你错过了maven的全部要点,或者 10 年前我没有对 C++ 使用maven对 C++ 的用处要小得多。我不能说 2009 年,但根据最近几年的经验,maven正是您所描述的问题所用的。它完全符合您的要求,并且非常有效和良好,并且不会做您声称的负面事情。任何在 2019 年或之后阅读本文的人都应该强烈考虑为此目的使用maven。
标签: c++ maven build dependency-management