首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >StyleCop MS创造魔力?谁在调用StyleCop目标?

StyleCop MS创造魔力?谁在调用StyleCop目标?
EN

Stack Overflow用户
提问于 2010-02-27 01:02:16
回答 1查看 2.6K关注 0票数 9

在我们的项目文件中,我们使用StyleCop并在构建过程中运行它。我们已经修改了我们的项目文件以包括StyleCop目标,如下所示:

代码语言:javascript
复制
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" />
<Import Project="..\..\Tools\Microsoft\StyleCop\v4.3\Microsoft.StyleCop.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
     Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->

问题是,为什么这是可行的?谁在调用Microsoft.StyleCop.targets文件中定义的StyleCop目标?

据我所知,当您开始构建时,唯一运行的目标是" build“目标。我在Microsoft.StyleCop.targets文件之外的任何地方都找不到任何对"StyleCop“目标的引用。那么,为什么要调用它呢?

我想知道的原因是,如果我们可以为自己的自定义任务做一些类似的事情,那就太酷了。因此,我们不需要编辑所有的78个csproj文件,只需导入我们自己的通用目标:

代码语言:javascript
复制
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(MSBuildExtensionsPath)\Microsoft\VisualStudio\v9.0\WebApplications\Microsoft.WebApplication.targets" />
<Import Project="Common.targets" />

然后只需在该文件中导入StyleCop,以及我们需要在每个项目基础上完成的所有其他任务。

请帮我理解一下。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2010-02-28 07:44:00

尤里卡!

秘诀是StyleCop目标文件中的以下几行:

代码语言:javascript
复制
<PropertyGroup>
  <BuildDependsOn>$(BuildDependsOn);StyleCop</BuildDependsOn>
  <RebuildDependsOn>StyleCopForceFullAnalysis;$(RebuildDependsOn)</RebuildDependsOn>
</PropertyGroup>

Microsoft.Common.targets中的"Build“目标是这样声明的:

代码语言:javascript
复制
<Target Name="Build"
        Condition=" '$(_InvalidConfigurationWarning)' != 'true' "
        DependsOnTargets="$(BuildDependsOn)"
        Outputs="$(TargetPath)" />

这意味着在构建过程中将调用"BuildDependsOn“属性中列出的任何目标。这不是很好吗?:)

票数 9
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2343340

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档