本文介绍了恶性或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的,选择当哪一个?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!