2012-05-13 42 views
6

我想建立使用單聲道2.10.9在OS X 10.7.4測試MVC4項目缺失。我創建在Visual Studio中使用Git的源代碼從Windows轉移到Mac OS X,然後我跑xbuild爲.nuget包還原一個新的空MVC4的Web應用程序,但是當我建立MonoDevelop中,我得到一個奇怪的錯誤:Webapplication.targets在OS X中的MonoDevelop建設MVC4項目時10.7.4

/Users/tamasnagy/Developer/Spellbound/Spellbound/Spellbound.csproj: Error: /Library/Frameworks/Mono.framework/Versions/2.10.9/lib/mono/xbuild/Microsoft/VisualStudio/v10.0/WebApplications/Microsoft.WebApplication.targets: Project file could not be imported, it was being imported by /Users/tamasnagy/Developer/Spellbound/Spellbound/Spellbound.csproj: Imported project: "/Library/Frameworks/Mono.framework/Versions/2.10.9/lib/mono/xbuild/Microsoft/VisualStudio/v10.0/WebApplications/Microsoft.WebApplication.targets" does not exist. (Spellbound)

這是什麼意思?當我在MonoDevelop中創建一個新的MVC項目並按下構建時,也會發生這種情況。有任何想法嗎?

回答

1

Mono的MSBuild的實現(xbuild)不具有ASP.NET項目目標的實現。

你也許能夠打造MonoDevelop中。確保在MonoDevelop首選項中關閉了實驗性的xbuild集成。

+0

如果關閉XBuild /的MSBuild你不鬆出來NuGet包還原?你必須回去手動恢復軟件包嗎? – sumitkm

3

更改您的csproj文件導入V9.0,像這樣......

<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" /> 
+0

爲MD主機改變V9.0的堅持回V10.0 – firegrass

8

創建符號鏈接:

CD/usr/lib目錄/單聲道/ xbuild /微軟/ VisualStudio中/ V9。 0

LN-S 9.0版V10.0

我有兩個不同的計算機完全相同的Ubuntu 12.04發行版和無法弄清楚,爲什麼單將彙編一臺計算機,而不是其他的。但是哦,符號鏈接解決了這個問題。

+0

創建符號鏈接,這不工作可能是最巧妙的解決方案,如果你有使用XBuild /的MSBuild(這是一個好事,當你想喜歡的好東西Nuget包恢復)。 – sumitkm

+1

這是比接受的更好的答案。 –

+0

新版本的Visual Studio也一樣:http://stackoverflow.com/a/35955692/200987 – oligofren

0

我知道這是一個老問題,但它想出瞭如何在OSX使用WebApplications.targets搜索時,所以它仍然是值得回答。隨着當前版本的Mono(5.x),包含Webapplication.targets,所以現在您只需設置VSToolsPath,並且所有內容都可以正常工作。

如果使用的是標準的bash shell中,.profile文件是把它的地方:

export VSToolsPath=/Library/Frameworks/Mono.framework/Versions/Current/lib/mono/xbuild/Microsoft/VisualStudio/v15.0/ 
相關問題