用于Delphi(或C#)的类似Maven的工具

用于Delphi(或C#)的类似Maven的工具,delphi,build,Delphi,Build,有人知道有没有像Maven一样的工具吗?我正在寻找管理项目依赖关系的工具 任何建议都将不胜感激。好吧,更新的Delphi支持msbuild(更像是一个ANT替代品),它也是可插拔的,并且插入IDE,IDE进行项目管理,并且也是可扩展的(通过toolapi) 尝试切换到其他缺乏深度Delphi编译器集成的构建工具会遇到问题,因为它们无法处理Delphi编译器可以在一次运行中决定编译单元堆的事实,并且在其他系统中不遵循“一个编译单元” 也有人多次建议免费使用Pascal,参见 一般来说,这些系统看起

有人知道有没有像Maven一样的工具吗?我正在寻找管理项目依赖关系的工具


任何建议都将不胜感激。

好吧,更新的Delphi支持msbuild(更像是一个ANT替代品),它也是可插拔的,并且插入IDE,IDE进行项目管理,并且也是可扩展的(通过toolapi)

尝试切换到其他缺乏深度Delphi编译器集成的构建工具会遇到问题,因为它们无法处理Delphi编译器可以在一次运行中决定编译单元堆的事实,并且在其他系统中不遵循“一个编译单元”

也有人多次建议免费使用Pascal,参见


一般来说,这些系统看起来非常复杂,真正需要的功能仍然需要在插件中实现。

如果您定义二进制工件,您可以将Maven与Delphi结合使用。我已经实现了一个原型,它甚至可以解决库、DCU和DLL的依赖关系。但是我担心有太多的开发人员不喜欢使用Java构建工具进行Delphi:)

对于C#/Net平台,Apache孵化器页面上列出了一些项目

  • -继续重写主干,包括插件
  • -继续0.14开发分支,包括插件和Visual Studio集成
  • -一个用C编写的类似Maven的工具#

NMaven于2008年11月从Apache孵化器中退休,现在开发的重点是这些相关项目

您使用的是什么版本的Delphi?我不想听起来像一个完全的noob,但你能用Maven做什么,而不能用项目组做什么?@Lieven Maven甚至会自动从Internet下载所需的依赖项-因此你只需要一个很小的“bootstrop”项目文件,Maven就能得到所有的DCU、DLL,来自一个或多个Internet存储库的文档—如果您只使用自己的库,则来自您的本地存储库。哦,它将运行文档工具、代码分析插件,如果你愿意的话,还可以将整个东西部署到web上。@mjustin一切和厨房水槽。感谢您的解释。在我使用Maven之后,依赖关系(外部和内部)就是我所拥有的,而且非常容易使用(NetBeans和Eclipse中的IDE支持,这是一个非常舒适和强大的工具)。编写像Maven这样的工具可能很复杂,但其好处更值得。Maven项目可以在Hudson CI中运行,这也是Delphi开发人员使用的CI工具。顺便说一句,“一次一个编译单元”是什么意思如果我将脚本文件或Apachen Ant与dcc32.exe和dpr文件一起使用,这会比使用msbuild慢吗?取决于它如何检查要生成的内容。如果它在启动时这样做,它就会出错。如果它在每次dcc执行后重新检查整个状态,则可能是正常的。但即便如此,也存在一些问题,例如,dcu文件可能不会出现在意外的目录中,因为来自不同包的单元被自动重新编译并放入当前包对象包中,从而导致多个.dcu和其他可怕的情况。这可能被认为是项目中的一个问题。对。但是如果你不注意这样的情况,它可能会变得混乱,对用户不友好。我只是为自己说话,但我不使用诸如ANT、NANT、Maven、Hudson、Cruise Control之类的工具,因为我不喜欢它们,但我想弄清楚它们似乎太愚蠢了。每次我尝试其中一个,我都会觉得我们当前使用普通批处理文件的buildserver更简单。Ant是一个批处理文件,有许多
OP称为“像Maven”,也就是说类似的东西可能没有Java(及其运行时依赖性)。顺便说一句,我同意列文的观点,这是我的感觉,通常这些工具非常复杂,解决不了那么多问题。也许他们能帮助组建规模巨大、结构复杂的团队,但我还没有发现一个能真正简化的案例(即使是在一个20人的团队中)。开发插件的时间似乎比直接为工作编写一些东西更大、更复杂。