我正在用Powershell写一个构建脚本。这些脚本执行各种操作,例如获取最新的源代码从SVN,备份等,并建立使用MSBuild的解决方案:Powershell脚本中的MSBuild - 如何知道构建是否成功?
cmd /c C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe "C:\Dev\Path\MyProjct.sln" /p:Configuration=Release
此指令后,我只是想执行脚本,如果其余编译成功。我怎样才能检查这个?
该项目是一个Web项目,所以检查输出并不那么容易,但我猜测一些变量将包含编译结果。另外,因为我用cmd/c调用msbuild,我可以访问这些变量吗?
我只是好奇......为什么要使用PowerShell脚本做构建?为什么不使用MSBuild文件并使用扩展任务库来执行像从SVN获取的内容? PowerShell很酷且功能强大,但在某种程度上,您正在采取艰难的方式。 – slugster 2010-10-24 22:33:39
嗯,首先是我并不真正了解MSBuild,但我有一个想法,那就是构建工具,并且我可能很难与其他任何东西(SVN,WinRAR,...)交互。对我而言,构建仅占开发流程的5%,我认为脚本语言对于其他95%是最合适的。但我很高兴错了。 – 2010-10-24 22:43:40
MSBuild是一个很好的面向任务的依赖工具。使用PowerShell可实现多种场景并支持面向产品的方法。检查出PSake,我们使用它。当你想扩展事物时,你不必进入C#(MSBuild Tasks)。您只需添加更多PowerShell。 – 2010-10-25 00:09:11