2008-11-19 23 views
9

我的公司正在从svn(和开源产品)转向TFS(和MS产品)。过去我们使用maven将预构建的组件包装到可发布的包中。 TFS或MS-Land中是否有工具可以像Maven一样强大?什么工具等同于TFS(或MS-land)中的Maven?

我看过msbuild,但它看起来不如Maven强壮。

+0

TFS现在支持Maven包管理: https://stackoverflow.com/a/44119042/7862382 – 2017-05-22 17:48:01

回答

4

没有什么喜欢它,MSBuild不像Maven,MSBuild就像Ant。当然,如果艾维可以让Ant更像“Maven-like”,那么有人可以创建像Ivy这样的东西,但对于MSBuild而言,它更像“Maven-like”。

有人试图创建一个名为NMaven的maven,但它现在是一个死的项目。其他尝试是NPandayByldan。但我不确定这两个项目的状态。

3

你会想看看Team Build这是TFS的一部分和MsBuild,Team Build使用它来自动化构建过程。通过将这两者结合在一起,您可以创建一个非常好的构建自动化流程,以生成iso映像,文档和运行单元测试。

+0

这与Paket相比如何? – 2016-08-02 11:14:05

+0

@JanusTroelsen您是否在谈论HashiCorp的Paket? – 2016-08-03 19:53:19

+0

我在说[this](https://fsprojects.github.io/Paket/) – 2016-08-03 21:02:53

7

在官方的TFS/Microsoft堆栈中,MSBuild是构建语言。然而,这更像是Ant(或Nant)而不是Maven - 即它是一种基于XML的脚本语言,它是为软件构建而设计的,而不是使用Maven的“约定配置”方法。 MSBuild没有Maven特有的依赖管理功能。

Team Foundation Build基于MSBuild,但它在预定义的目标(类似于Maven讲话中的目标)中放置了一个活动框架。这些活动包括诸如生成内部版本号,标记代码,下载代码,构建定义的解决方案,运行单元测试,将结果发布回TFS以及将构建结果应用于网络共享以供稍后部署。您可以轻松地在Visual Studio UI中创建一个新的Team Foundation Build,然后通过重写默认构建过程中调用的一些预定义钩子来自定义它,方法是编辑为您创建的TFSBuild.proj文件建立。在某些方面,您可以将TFSBuild.proj文件看作有点像Maven POM文件 - 但它们非常不同。

Team Foundation Build 2008中的构建系统是一个不错的选择 - 虽然非常受XML驱动。但是,如果您对Maven配置感到满意,那么您会对基于Team Foundation Build的基于XML的配置感到满意。 TFS Build提供了构建计划,持续集成,构建保留管理等功能。您还可以使用我工作的公司(Teamprise)的免费(和开源)build extensions轻松地调用现有的Ant构建。

有趣的是,我们实际上正在研究与Team Foundation Build的Maven2集成。我们开发了一个与TFS对话的Maven2 SCM供应商,我们目前正在开发Team Build Extension,以便您可以从Team Foundation Build轻松调用Maven2构建。如果您希望坚持使用Maven构建您的构建版本,并在Maven集成发布之后对其进行测试,那么请给我写一行([email protected])。

如果您正在使用Maven来构建.NET或Java项目(或别的东西,或一切的组合)

希望帮助,

马丁,我很想听听。

相关问题