2011-10-03 32 views
0

我试图通过使用Bash和等待解决方案构建的成功来运行单元测试来改进我们的本地构建实现。Bash - MSBuild - 文件记录器

此刻,我想以相当模式将控制台的结果输出到控制台(使用默认控制台记录器),但使用文件记录器将结果更详细地输入到文件中。

从bash我可以执行构建罚款,提供我不具体的FileLogger。

C:/Windows/Microsoft.NET/Framework/v4.0.30319/MSBuild.exe /verbosity:q D:/MyDocs/Main.sln 

一刻起,我这样做:

C:/Windows/Microsoft.NET/Framework/v4.0.30319/MSBuild.exe /verbosity:q D:/MyDocs/Main.sln /logger:FileLogger,Microsoft.Build.BuildEngine; /flp:logfile=Build.Log 

构建失败,我得到一个无法加载文件或程序集Microsoft.Build.BuildEngine。

我也试过改变目录,以便我在框架目录中,但仍然得到相同的错误。

另一方面,我试图为开发人员提供本地构建的详细程度,但如果构建成功,则启用测试的自动执行。我将通过检查Build.Log文件的内容来分析构建成功,以了解“构建成功”或“构建失败”

我试图使用>“Build.log”将结果推送到文件,但影响控制台上的编译输出会降低我试图实现的一些价值。

任何帮助将是伟大的。

感谢

+0

你的意思是[shell](http://en.wikipedia.org/wiki/Shell_(计算)),当你说[bash](http://www.gnu.org/s/bash/) ?或者你在[Cygwin](http://www.cygwin.com/)下运行它? – chown

回答

0

Microsoft.Build.BuildEngine是一个命名空间,而不是一个ILogger。如果更换该部分:

/logger:FileLogger,Microsoft.Build.BuildEngine; 

...有一个有效​​它更可能的工作。