2014-02-13 70 views
5

我試圖讓我們的構建服務器(TeamCity 8)構建一個F#項目(我們團隊中創建的第一個項目)。TeamCity無法構建F#項目

當我第一次跑了構建我得到了以下錯誤:

我認爲,這意味着所需的F#工具不存在生成服務器上。我試圖用這個博客文章中的說明糾正這個問題:http://www.heartysoft.com/ashic/blog/2013/3/build-fsharp-3-on-build-server-without-vs(總結:下載並安裝VWD_FSharp.msi),但問題依然存在。然後我加入條件=「是否存在(‘$(FSharpTargetsPath)’)」,以導入標籤在fsproj,以便它現在讀取:

<Import Project="$(FSharpTargetsPath)" Condition="Exists('$(FSharpTargetsPath)')" /> 

我在另一篇博客中看到,但都這樣做了被交換一個新的錯誤:

The target "Rebuild" does not exist in the project. 

在這裏的任何幫助將不勝感激;我真的不想在生成服務器上安裝VS。關於我們的環境唯一值得注意的是我們使用的是.NET 4而不是4.5。

感謝

+0

您如何看待警告? C#項目已經在服務器上工作了嗎? –

+0

嗯 - 問題似乎回來了。 我使用VStudio 2017,創建了一個控制檯F#項目,它完全符合上述的要求。我也已經安裝了當前的FSharp_Bundle.exe。 不過,沒有v3框架了。我在C:\ Program Files(x86)\ Microsoft SDKs \ F#\ 4.1 \ Framework \ v4.0下找到目標文件。 該項目針對4.4.0.0 F#Runtime和.NET 4.5.1。它在工作室中建造得很好,但它根本不會由MSBuild構建。 我該怎麼辦? – Slesa

回答

1

謝謝你的問題Ganesh神,因爲我已經解決了這個問題。因此,在我的問題中使用鏈接安裝F#工具確實有效,但是在MSBuild目錄中進行了一些挖掘後發現它只安裝了F#v3;我的項目針對v3.1(VS2013中的默認版本)。

進入每個項目的設置文件和重定向爲3.0解決了這個問題。