我使用下面的蛋糕脚本来编译我的C#
项目。执行脚本时PowerShell
中显示的警告消息很少。我喜欢将警告记录在物理位置的文本文件中(例如:D:\WarningReport.txt)
)。
以下是我用来编译项目的蛋糕脚本任务。
Task("Build")
.Does(() =>
{
if(IsRunningOnWindows())
{
MSBuild("./src/Example.sln", settings =>
settings.SetConfiguration(configuration));
}
});
我想添加如下内容,
LogWarningMessagesTo("D:\WarningReportes.txt");
LogErrorMessagesTo("D:\ErrorReportes.txt");
怎么做?
答案 0 :(得分:5)
如果来自MSBuild别名的警告和错误,您希望使用AddFileLogger参数上的MSBuildSettings扩展方法记录这些警告和错误。
基本上改变
MSBuild("./src/Example.sln", settings =>
settings.SetConfiguration(configuration));
到
MSBuild("./src/Example.sln", settings =>
settings.SetConfiguration(configuration)
.AddFileLogger(new MSBuildFileLogger {
LogFile ="D:/WarningReportes.txt",
MSBuildFileLoggerOutput = MSBuildFileLoggerOutput.WarningsOnly })
.AddFileLogger(new MSBuildFileLogger {
LogFile ="D:/ErrorReportes.txt",
MSBuildFileLoggerOutput = MSBuildFileLoggerOutput.ErrorsOnly })
);