È possibile scrivere un logger personalizzato come spiegato qui: http://msdn.microsoft.com/en-us/library/ms171471.aspx
Ecco un po 'di codice per iniziare:
public class SummaryLogger : Logger
{
int warningCount = 0;
int errorCount = 0;
public override void Initialize(IEventSource eventSource)
{
eventSource.WarningRaised += eventSource_WarningRaised;
eventSource.ErrorRaised += eventSource_ErrorRaised;
eventSource.BuildFinished += eventSource_BuildFinished;
}
void eventSource_WarningRaised(object sender, BuildWarningEventArgs e)
{
warningCount++;
Console.WriteLine("Warning: " + e.Message);
}
void eventSource_ErrorRaised(object sender, BuildErrorEventArgs e)
{
errorCount++;
Console.WriteLine("Error: " + e.Message);
}
void eventSource_BuildFinished(object sender, BuildFinishedEventArgs e)
{
Console.WriteLine("MSBuild Finished: " + errorCount + " errors | " + warningCount + " warnings.");
}
}
Questo logger registra avvisi, gli errori e Riepiloga la quantità di errori e avvisi. Dovrai aggiungere un po 'di codice per tempo e progetti, in modo che sia esattamente quello che desideri.
Per usarlo, si chiamano MSBuild con le seguenti params aggiunti ad esso:
/nologo /noconsolelogger /logger:pathTo/SummaryLogger.dll
fonte
2014-01-28 20:39:03
Ho anche provato questo modo mamny e non penso sia possibile ... Per curiosità, cosa c'è che non va nell'output standard? Ho trovato che è molto utile per il debug dei problemi di build e può essere facilmente cancellato con una chiamata 'cls' –
@NickNieslanik L'output standard per la soluzione è ampio e il buffer del prompt dei comandi non è (senza modifiche) abbastanza grande da consentire rivedi l'output completo della console, più un sacco dell'output come il file copiato, il file cancellato non mi interessa in –
Perché non usi File Logger per risolvere il problema del buffer del prompt dei comandi? questo allevierebbe almeno uno dei problemi. È possibile utilizzare il registratore di file per fare cose come "errori di registro in un file, avvisi a un altro e informazioni regolari a un terzo" –