无法使用 xbuild 构建解决方案(单声道)
本文关键字:单声道 声道 解决方案 构建 xbuild | 更新日期: 2023-09-27 18:34:31
当尝试使用xbuild
在Mac和Linux上通过Mono构建我的解决方案时(尚未在Windows下测试(,我得到了这个奇怪的错误,我无法在其他任何地方找到。
Errors:
/Users/macbook/git/DiscordSharp/DiscordSharp.sln (default targets) ->
(Build target) ->
/Users/macbook/git/DiscordSharp/DiscordSharp/DiscordSharp.csproj (default targets) ->
/Library/Frameworks/Mono.framework/Versions/4.2.2/lib/mono/4.5/Microsoft.CSharp.targets (CoreCompile target) ->
/Library/Frameworks/Mono.framework/Versions/4.2.2/lib/mono/4.5/Microsoft.CSharp.targets: error : Tool executable '/MSBuild/14.0/Bin/mcs.exe' could not be found
1 Warning(s)
1 Error(s)
Time Elapsed 00:00:02.0472770
MacBooks-MacBook:DiscordSharp macbook$
有趣的是,我能够在MonoDevelop中打开解决方案并以这种方式构建它。解决方案中的项目目标Mono / .NET Framework 4.5
。我正在运行单声道4.2 SR1 (4.2.2.30)
。
可能导致此问题的原因是什么,我可以通过什么方式解决它?这个问题阻止了我在这个项目中使用 TravisCI,我还没有找到修复的方法。
.csproj
文件只是为Platform
条件(应该使用OS
...(定义一个非Unix CscToolPath
,不确定Windows(?(的v14的要求是什么,所以作为一个测试:
vi DiscordSharp/DiscordSharp.csproj
删除:
<PropertyGroup Condition="'$(Platform)' != 'Unix'">
<CscToolPath>$(MSBuildProgramFiles32)'MSBuild'14.0'Bin</CscToolPath>
</PropertyGroup>
重建项目,它应该可以正常工作:
nuget restore
xbuild DiscordSharp.sln
如果 Windows 需要 v14 MSbuild,则可以使用以下命令:
<PropertyGroup Condition="'$(OS)' != 'Unix'">
<CscToolPath>$(MSBuildProgramFiles32)'MSBuild'14.0'Bin</CscToolPath>
</PropertyGroup>
http://www.mono-project.com/archived/porting_msbuild_projects_to_xbuild/
然后,以下内容应该运行良好,没有错误:
xbuild /target:clean
xbuild /target:build