是否可以在Mono中从命令行生成MSBuild文件(visual studio sln)?

是否可以在Mono中从命令行生成MSBuild文件(visual studio sln)?,msbuild,mono,Msbuild,Mono,是否可以在不启动MonoDevelop的情况下构建Visual Studio解决方案?我想您正在寻找xbuild: 当前状态(Mono 2.102011):xbuild现在可以生成所有版本的Visual Studio/MSBuild项目,包括.sln文件。只需运行xbuild,就像在Microsoft.Net Framework上执行msbuild一样。您不需要安装Monodevelop,xbuild附带标准Mono安装 如果您的构建使用自定义任务,如果它们不依赖于Windows可执行文件(例如

是否可以在不启动MonoDevelop的情况下构建Visual Studio解决方案?

我想您正在寻找xbuild:

当前状态(Mono 2.102011):xbuild现在可以生成所有版本的Visual Studio/MSBuild项目,包括.sln文件。只需运行
xbuild
,就像在Microsoft.Net Framework上执行
msbuild
一样。您不需要安装Monodevelop,xbuild附带标准Mono安装

如果您的构建使用自定义任务,如果它们不依赖于Windows可执行文件(例如
rmdir
xcopy
),则它们仍然可以工作

编辑项目文件时,请使用标准的Windows路径语法-必要时,xbuild将转换这些文件。此规则的一个重要警告是区分大小写-不要混合使用相同文件名的不同大小写。如果您有一个这样做的项目,您可以通过调用
MONO\u IOMAP=case xbuild foo.sln
(或者尝试
MONO\u IOMAP=all
)来启用兼容模式。Mono有一个页面介绍了更先进的技术


Mono 2.0 answer(2008):尚未完成(它在VS2005.csproj文件中运行良好,在VS2008.csproj中存在问题,并且不处理.sln)。Mono 2.1计划将mdtool(MonoDevelop命令行构建引擎)的代码库合并到其中,但目前是一个更好的选择
mdtool build-f:project.sln
或者如果您安装了MonoDevelop。

xbuild现在支持解决方案和项目,包括VS2005和VS2008。

从2017年8月开始,我们可以使用

msbuild
命令,因为xbuild被降价了。

显然mdtool已重命名为mdrunIt。反过来说,您有一个从2.10.9开始的过时的MonoDevelop.xbuild,没有给我带来任何乐趣。错误MSB4126:指定的解决方案配置“Debug | web”无效--尽管按照错误消息中的建议使用了/p:Platform=“Any CPU”。到目前为止,msbuild不是Debian的一部分