恶性或MSBuild的,选择当哪一个? [英] NAnt or MSBuild, which one to choose and when?

查看:179
本文介绍了恶性或MSBuild的,选择当哪一个?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我知道还有其他和的的MSBuild 对堆栈&NBSP相关问题;溢出,但我无法找到两者之间的直接比较,所以这里的问题

I am aware there are other NAnt and MSBuild related questions on Stack Overflow, but I could not find a direct comparison between the two and so here is the question.

当要选择其中一种恶性过的MSBuild?哪一个是什么好?是恶性更适合家庭/开源项目和MSBuild的工作项目?什么是任何两个的经验吗?

When should one choose NAnt over MSBuild? Which one is better for what? Is NAnt more suitable for home/open source projects and MSBuild for work projects? What is the experience with any of the two?

推荐答案

我这周做了类似的调查。以下是我已经能够确定:

I've done a similar investigation this week. Here's what I've been able to determine:

楠:

  • 在跨平台(支持Linux /单声道)。这可能是方便的安装一个网站,向多个目标(也就是,Linux的Apache和IIS的Windows),例如。
  • 在语法95%,类似于Ant(便于目前的蚂蚁用户或Java的建设者拿起)
  • 在运行单元测试作为构建的一部分,并与NDoc的对产区文档集成NUnit的。

的MSBuild:

  • 内置到.NET。
  • 与Visual Studio集成
  • 易于上手的MSBuild在Visual Studio中 - 这一切都在幕后。如果你想获得更深层次的,你可以手动编辑文件。

主观差异: (因人而异)

  • 楠文档是一个小更简单。例如,的MSBuild任务参考名单CSC任务 - 介绍CSC的任务和它的参数。 (感谢帮助?),相较于楠任务参考中信建投 - 编译C#程式。 更新:我注意到 MSBuild的文档已得到改进,现在好多了(可能堪与恶性)。
  • 不容易弄清楚如何编辑构建脚本源(*。* PROJ文件)直接从Visual Studio中。随着南特我只是有Visual Studio对待.build脚本作为一个XML文件。
  • 显然,在Visual Studio中,Web应用程序项目没有得到*。*凸出默认文件,所以我有很大的困难搞清楚如何连得的MSBuild对矿井运行以创建一个部署脚本。
  • 在南特没有内置到Visual Studio,具有无以复加,无论是与一个外接程序,或为外部工具。这是一个有点疼痛成立。
  • ()我的一个同事把这个了 - 如果你想使用 CruiseControl的连续设置在构建机集成,CruiseControl的集成南特很好的开箱。 更新: CruiseControl的也有一个 MSBuild任务
  • 请参见下面的注释主观差异充分和及时的最新讨论。
  • NAnt documentation is a little more straightforward. For example, the MSBuild Task Reference lists "Csc Task - Describes the Csc task and its parameters. " (thanks for the "help"?), vs the NAnt Task Reference "csc - Compiles C# programs." UPDATE: I've noticed the MSBuild documentation has been improved and is much better now (probably on par with NAnt).
  • Not easy to figure out how to edit the build script source (*.*proj file) directly from within Visual Studio. With NAnt I just have Visual Studio treat the .build script as an XML file.
  • Apparently, in Visual Studio, Web Application Projects don't get a *.*proj file by default, so I had great difficulty figuring out how to even get MSBuild to run on mine to create a deployment script.
  • NAnt is not built-in to Visual Studio and has to be added, either with an Add-In, or as an "External Tool". This is a bit of a pain to set up.
  • () One of my coworkers brought this up--if you want to set up a build machine using CruiseControl for continuous integration, CruiseControl integrates with NAnt nicely out of the box. UPDATE: CruiseControl also has an MSBuild task.
  • Please see comments below for full and up-to-date discussion of subjective differences.

这篇关于恶性或MSBuild的,选择当哪一个?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆