我正在尝试使用 Mono/xbuild 在 Ubuntu 上构建我的 SLN
我开始收到与 webapplication.targets missing 相关的错误,我想我已经通过添加一个 simlink 来解决这个问题,如 Webapplication.targets missing when building a MVC4 project in MonoDevelop on OS X 10.7.4
但现在我收到与以下相关的错误 :错误:初始化任务时出错错误:无法加载文件或程序集“Microsoft.Build.Tasks.v4.0”或其依赖项之一。
我需要采取任何特殊步骤才能完成这项工作吗?我需要特定版本的 Mono 吗?
[更新]
这似乎是 Nuget 步骤的问题:
azureuser@scratchpad:~/test-api/src/Model$ xbuild Model.csproj
XBuild Engine Version 12.0
Mono, Version 3.2.8.0
Copyright (C) 2005-2013 Various Mono authors
Build started 8/4/2014 11:29:09 AM.
__________________________________________________
Project "/home/azureuser/test-api/src/Model/Model.csproj" (default target(s)):
Target EnsureNuGetPackageBuildImports:
: error : Error initializing task Error: Could not load file or assembly 'Microsoft.Build.Tasks.v4.0' or one of its dependencies. The system cannot find the file specif
ied.
Task "Error" execution -- FAILED
Done building target "EnsureNuGetPackageBuildImports" in project "/home/azureuser/test-api/src/Model/Model.csproj".-- FAILED
Target _RecordCleanFile:
: error : Error initializing task ReadLinesFromFile: Could not load file or assembly 'Microsoft.Build.Tasks.v4.0' or one of its dependencies. The system cannot find the
file specified.
Task "ReadLinesFromFile" execution -- FAILED
Done building target "_RecordCleanFile" in project "/home/azureuser/test-api/src/Model/Model.csproj".-- FAILED
Done building project "/home/azureuser/test-api/src/Model/Model.csproj".-- FAILED
Build FAILED.
Errors:
/home/azureuser/test-api/src/Model/Model.csproj (default targets) ->
(EnsureNuGetPackageBuildImports target) ->
: error : Error initializing task Error: Could not load file or assembly 'Microsoft.Build.Tasks.v4.0' or one of its dependencies. The system cannot find the fil
e specified.
/home/azureuser/test-api/src/Model/Model.csproj (default targets) ->
/usr/lib/mono/4.5/Microsoft.Common.targets (_RecordCleanFile target) ->
: error : Error initializing task ReadLinesFromFile: Could not load file or assembly 'Microsoft.Build.Tasks.v4.0' or one of its dependencies. The system cannot
find the file specified.
0 Warning(s)
2 Error(s)
Time Elapsed 00:00:00.3989900
最佳答案
我在 Debian Jessie 上遇到了同样的问题。 knocte 的“提示”是正确的。 3.2.8版本的mono不够用。 我按照 mono-project site 上的说明安装了最新版本 并且有效。
所以,我做到了:
#add the Mono Project GPG signing key as trusted
apt-key adv --keyserver pgp.mit.edu --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF
#add their pacages repository to apt sources
echo "deb http://download.mono-project.com/repo/debian wheezy main" > /etc/apt/sources.list.d/mono-xamarin.list
#refresh package list
apt-get update
#install newer mono & friends
apt-get install mono-devel
然后,我之前失败的 xbuild 开始工作了。
mono --version
3.10.0
xbuild /version
XBuild Engine Version 12.0
关于ubuntu - 在 mono/Ubuntu 上构建 SLN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25116391/