我想知道人们是否认为值得学习MSBuild语法来定制 .net 项目的构建过程,或者说考虑到使用 Visual Studio 构建项目的简单性,这样做真的不值得吗?
我的考虑是夜间构建等方面的问题,但是我可以使用内置在 VS 中的命令行构建选项来进行计划事件吗?还有更好的工具吗?
MSBuild绝对值得学习。在初始的学习曲线(实际上可能非常陡峭)之后,进行最常见的构建自动化步骤变得相当容易。
MSBuild非常容易使用,您可以使用VS来管理项目和解决方案文件,只需将SLN传递给MSBuild即可。
如果你在开发方面使用.NET工作室,学习是值得的。
我已经将我们的构建过程与Jenkins集成 - 最初是Hudson。
正如上面提到的,MSbuild具有陡峭的学习曲线。然而,一旦掌握了基本原理,就可以开始定制构建。
到目前为止,我的印象可能很幼稚,脚本的大部分由...组成。
<PropertyGroup>
<PropertyKey>value</PropertyKey>
</PropertyGroup>
<ItemGroup>
<ItemListKey>List values<ItemListKey>
</ItemGroup>
<Task Source="" Target="" />
使用MSBuild命令行进行构建相对而言较容易学习。首先打开Visual Studio命令提示符,然后运行msbuild /?
。只需要阅读帮助一次,然后稍后再决定是否要了解更多细节。
编写项目文件则稍微复杂一些。大多数人不需要学习它,因为你可以在Visual Studio中完成大多数操作。但是,对于某些问题,它也非常强大。
我过去曾将MSBuild用作脚本语言,结合大量自定义任务使用。MSBuild具有出色的日志记录支持和内置的依赖项管理。但是,它不是一个易于学习的语言。PowerShell是一个更好的选择。