NAnt替代品

问题描述:

我一直在使用NAnt一段时间,但它似乎对我所需要的过于复杂。我想知道是否有任何替代方法来构建C#项目?NAnt替代品

我会说,一旦你在NAnt开始它并不那么复杂。我错过了一些好的“让我开始”的教程,我看过的所有内容都显得过时了。一件好事是你可以使用MSBuild来构建应用程序(这就是我正在使用的),并用NAnt来完成剩下的工作。

至少我认为它并不比MSBuild难 - 对于MSBuild更简单,您可以*使用MSBuild。

这是我在用的:

<exec program="msbuild.exe" 
     basedir="C:\windows\microsoft.net\Framework\v3.5\" 
     commandline="Project.csproj /p:OutDir=..\Outdir\; configuration=Release" /> 

有MSBuild,但它并不比Nant简单。

一旦习惯了语法,两者都很好。

更简单的选项是使用批处理文件。

另一种方法是使用CIFactory,它提供了一种快速获取构建和持续集成服务器的方法。

你可能会尝试FinalBuilder - 这是非常容易使用,但我宁愿坚持NAnt。你总是有MSBuild ...

+0

我喜欢[Visual Build](http://www.kinook.com/VisBuildPro/)这样的工具,但它们是商业的,它们需要安装很多您的系统上的文件。甚至不要在另一个操作系统上运行它们。 – Wernight 2012-09-11 22:54:28

Maven是一个伟大的构建工具,它主要开发用于Java社区,但现在一个.NET plugin有构建C#项目。 Maven(see wikipedia作简要概述)与NAnt之间存在相当大的概念差异,因此如果您想尝试,您可能需要先阅读该文档。

2个有趣的功能:

    插件
  • 成熟集合做常见任务,如测试,文档生成,部署等
  • 可以从central repository

自动获得项目依赖于你

现在有一些很好的选择NAnt和MSBuild。

nRake(或只是耙)

http://jamescrisp.org/2010/03/20/nrake-rake-builds-for-net/

psake - 建立写在PowerShell中

http://jameskovacs.com/2008/06/27/introducing-psake/

自动化工具,我个人使用楠和MSBuild的和我急于等待我们即将切换到其中一个(我们还没有决定哪个)。 NAnt和MSBuild不是很难开始使用,但是一旦构建脚本开始变得越来越大,越来越复杂,并且您需要实际调试它们,它们就成了一个巨大的负担。这取决于你的自动化程度。

+0

我知道这是一个旧帖子,但你有没有选择一个新的构建过程? – 2015-06-12 11:04:27

Phantom是一个非常整洁的替代C#。我希望它是在Python(更便携),更多的使用,因为语法非常整齐和强大。

我们正在调查Cake - 最大的优势是它基本上是C#。
随着复杂的过程,我们今天这是相当难以维持用于构建,包装和标签的代码以及运行过程中出现的单元测试,代码覆盖率,静态分析等我们的恶性脚本..
参见Why should you use a general purpose scripting language for your build scripts?
由于大部分我们的代码是C#我们宁愿使用C#...