I just learned darüber, wie man FxCop in einen Build einbaut. Aber es ist langsam und ich möchte, dass es nur bei Release-Builds gemacht wird. Gibt es eine Möglichkeit, das zu konfigurieren?Wie konfiguriert man MSBuild, um einige Aufgaben nur auf Release-Builds zu tun?
24
A
Antwort
45
Überprüfen Sie die Konfigurationsbedingung.
<Target Name="AfterBuild" Condition="'$(Configuration)' == 'Release' ">
<FxCop TargetAssemblies="@(OutputAssemblies)"
RuleLibraries="@(FxCopRuleAssemblies)"
DependencyDirectories="$(MSBuildCommunityTasksPath)"
FailOnError="False"
ApplyOutXsl="True"
OutputXslFileName="C:\Program Files\Microsoft FxCop 1.32\Xml\FxCopReport.xsl"
DirectOutputToConsole="true"/>
</Target>
4
habe nicht getestet, aber ich denke, es ist etwas entlang der Linien sein sollten:
<Target Name="MyTarget" Condition="'$(FlavorToBuild)'=='Release'">
...do release specific stuff...
</Target>
0
hinzufügen im .msbuild Skript eine Bedingung. Führen Sie die FxCop-Task nur dann aus, wenn die Konfiguration "freigeben" ist, nicht etwa, wenn sie "Debug" ist.
Wenn Sie FlavorToBuild durch Konfiguration ersetzen, funktioniert es! –