2009-11-26 38 views
2

Maven历史悠久,在Java世界中得到很好的支持。 NMaven已经收到了一个不太成功的开始,并且从未在C#/。NET世界中变得流行,因为它的更大的表兄弟在Java世界。该项目似乎接近死亡(ISH),但也许我错了。固体NMaven或为.NET替代品构建服务器是什么?

是否有替代方案,最好使用NAnt,通常用于NMaven并且具有与Maven类似的属性?我正在寻找的是一个很好的.NET开源自动构建服务器,如果有的话。还是应该继续使用NMaven?

回答

8

MAven比CI/Build安装程序更像是一个存储库管理器。

如果您正在寻找持续集成服务器,这里是我所知道的那些:

  • CruiseControl.Net(http://confluence.public.thoughtworks.org/display/CCNET/Welcome+to+CruiseControl.NET)不够好,免费的,但可以是一个资源猪和配置有时令人抓狂。
  • Hudson(http://hudson-ci.org/)有一些相当不错的.Net特定任务。作为一个开源/免费的自动构建设置,我倾向于通过CruiseControl.Net来支持它。它需要运行Java,但它在Windows上运行良好。网页仪表板很好(尽管蓝色而不是绿色的奇怪恋物癖)和项目配置是一件轻而易举的事情(与CCNet相比...)
  • TeamCity(JetBrains)(http://www.jetbrains.com/teamcity/)非常好,提供了很多有趣的功能(提交之前的私有远程构建,分布式构建代理等)以及良好的VS.Net集成。您必须为许可证支付费用,但小团队可以免费使用。

所有这些支持最流行的SCM(CVS,SVN)Hudson和TeamCity支持Mercurial和Git。

我会去Hudson或TeamCity。

+1

是的,我实际上正在寻找构建/集成服务器(并且我确实使用Maven以及一些工具来实现过去)。你能否详细说明为什么你更喜欢Hudson或TeamCity?我知道CruiseControl,但不知道其他人。 – Abel 2009-11-26 16:04:08

+4

TeamCity和Hudson更容易设置和配置。他们提供基于Web的配置仪表板,使其易于调整或构建链。 Ccnet安装涉及到很多xml文件的编辑和试错。或者你最终为它编写自己的配置前端。 CCnet很好,但处理它的配置真的很乏味。 ccnet唯一的优势在于它纯粹是基于.net的。但是我从来没有发现Hudson或Team City缺乏关于.net特定任务的内容。 – 2009-11-26 16:13:28

+0

感谢您的更新,我们做出实际决定需要一段时间,但这很有帮助。谢谢。 – Abel 2009-11-29 23:54:12

3

我们使用CruiseControl.NET(引入一点NAnt)。它是开放源代码(Apache/BSD),稳固,流行,并且正在开发中。

它专为持续集成而设计,但如果您愿意,可以轻松手动触发构建。

配置是通过一个XML文件。

+0

我的印象是CruiseControl不是开源的,而是来自Confluence的封闭源代码(与Jira相同,对吧?)。无论如何,这似乎是我错了。如果我可以在这个项目中使用CC,会很好。 – Abel 2009-11-26 15:47:24

+3

没有CCNet是开源的。 Atlassian构建服务器是Bamboo。 – 2009-11-26 15:51:39

+2

根据http://sourceforge.net/projects/ccnet/(该网站链接到下载),其APL/BSD像科林说。 – mwalling 2009-11-26 15:56:40

3

对于持续集成和创建构建TeamCity对于较小的操作(最多3个构建代理)是很好的和免费的。它功能强大,支持NAnt和朋友(例如MSBuild),它的最大特点是易于使用和配置。即使升级是无痛的。

问题在于它不完全免费,如果您需要更多功能(例如超过3个构建代理),则需要花费。另外,你问一个Maven替换 - 它不会像Maven那样处理依赖关系。

2

你可能想看看我们的Parabuild。它不是开源的,但对于小团队来说它是free,支持包括在内。

+0

+1看起来很有前途。感谢您将此添加到线程! – Abel 2010-06-25 09:48:32

1

您可能会喜欢看NPanday,它正在积极地开展工作。它将与Maven的任何构建服务器一起工作。