我正在尝试在NAnt中构建VS 2008解决方案,但似乎msbuild在第一次编译错误发生后停止了构建过程。
在MSBuild中有一个“ContinueOnError = true”或“StopOnFirstFailure = false”属性,但是如何在NAnt中指定它? failonerror =“false”无法解决问题:
答案 0 :(得分:0)
我需要承认这只是第一次猜测,但您是否尝试将ContinueOnError=true
作为属性传递给MSBuild?
假设您使用NAntContrib msbuild
任务:
<msbuild project="${projectfile.path}">
<property
name="ContinueOnError"
value="true" />
</msbuild>
或exec
任务:
<exec program="${msbuild.exe.path}">
<arg value=""${projectfile.path}"" />
<arg value="/p:ContinueOnError=true" />
</exec>
如果那么简单,那不是很完美吗?
答案 1 :(得分:0)
我现在已经与Nant和CC.Net进行配置管理了一段时间。我的经验我不建议使用Nant MSBuild任务,而最简单的方法是创建和任务,创建任务执行的.bat文件。有几个原因建议使用命令行Visual Studio,因为即使您使用contrib,也不能使用Nant轻松构建一个MSI包。此外,它应该消除你的Nant继续错误请求,Devenv应该自动继续构建,即使一个项目失败。此外,如果您使用此方法,您将不必担心更改nant和nant contrib以处理3.5。如果您使用Cruise控件,您仍会在XML文件中看到您的构建输出。
--------- 2.0 --------
“C:\ Program Files \ Microsoft Visual Studio 8 \ Common7 \ IDE \ devenv”C:\ YourProject \ YourSoultion.sln / Rebuild release
3.5 ---------- --------
“C:\ Program Files \ Microsoft Visual Studio 9.0 \ Common7 \ IDE \ devenv”C:\ YourProject \ YourSoultion.sln / Rebuild release