2008-11-19 24 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項目(或別的東西,或一切的組合)

希望幫助,

馬丁,我很想聽聽。

相關問題