【发布时间】:2023-09-20 09:29:01
【问题描述】:
我正在创建一个构建脚本,在其中输出 MSBuild 的 TargetOutputs,然后想在单独的目标中调用 FXCop,并在 TargetAssemblies 中使用这些输出。
<Target Name="Build">
<MSBuild Projects="@(Projects)"
Properties="Platform=$(Platform);Configuration=$(Configuration);"
Targets="Build"
ContinueOnError="false">
<Output TaskParameter="TargetOutputs" ItemName="TargetDLLs"/>
</MSBuild>
<CallTarget Targets="FxCopReport" />
</Target>
<Target Name="FxCopyReport">
<Message Text="FXCop assemblies to test: @(TargetDLLs)" />
<FxCop
ToolPath="$(FXCopToolPath)"
RuleLibraries="@(FxCopRuleAssemblies)"
AnalysisReportFileName="FXCopReport.html"
TargetAssemblies="@(TargetDLLs)"
OutputXslFileName="$(FXCopToolPath)\Xml\FxCopReport.xsl"
ApplyOutXsl="True"
FailOnError="False" />
</Target>
当我在 FxCopyReport 目标中运行它时,TargetDLLs 的消息为空,而如果我将它放在 Build 目标中,它会填充。
如何传递/引用这个值?
【问题讨论】:
标签: msbuild fxcop msbuild-4.0 msbuildcommunitytasks