This has been asked, mais n'a pas reçu de réponse. La réponse (utiliser /warn:1
) ne fonctionne pas pour msbuild.exe, seulement csc.exe. Peut-être qu'il me manque quelque chose entre csc et msbuild?comment puis-je supprimer tous les avertissements d'analyse de compilateur et de code de msbuild à la ligne de commande?
Je voudrais supprimer tous les avertissements du compilateur et des avertissements d'analyse de code (par exemple « La variable « variableNameHere » est affectée, mais sa valeur ... » ou Analyse du code Avertissement: CA1805: Microsoft.Performance: ..) lorsque j'utilise la ligne de commande msbuild. Je ne veux pas modifier le fichier de solution. Il y a plusieurs centaines de messages d'avertissement dans la très grande solution que je suis en train de construire - les corriger est loin de la portée de mon projet. J'ai essayé /v:quiet
mais cela n'a pas fonctionné.
Y a-t-il un moyen de le faire via la ligne de commande?
Mise à jour: ceci:
C:\WINDOWS\Microsoft.NET\Framework\v3.5\msbuild.exe C:\Dev\ReallyBigSolution.sln /p:NoWarn=true /p:NoWarn=CA1031
Absolument ne fonctionne pas. Je reçois toujours des centaines d'avertissements, y compris celui que j'ai spécifiquement bloqué (CA1031).
L'utilisation de /p:RunCodeAnalysis=Never
ou /p:RunCodeAnalysis=false
ne semble pas supprimer les avertissements ou les erreurs d'analyse de code.
Je me demande où il n'y a pas d'interface utilisateur pour MSBuild? On dirait qu'il pourrait vraiment en utiliser un. Deviner à différents paramètres est une perte de temps. – jcollum
Vous n'avez pas besoin de deviner. Utilisez VS, modifiez les propriétés du projet (onglet build ou onglet d'analyse de code), puis observez les modifications qui persistent dans le fichier .csproj. Le point entier de msbuild est d'être un outil de ligne de commande. – Brian
@Brian: J'ai regardé les pages de propriétés de csproj et ne vois rien à propos de ces avertissements d'analyse de code. Je pense que je vais abandonner. Gaspiller trop de temps à ce sujet. Je pensais que ce serait facile, juste une ligne de commande me manquait. – jcollum