将WinForms VS2013项目升级到VS2015后,我开始看到MSB3884“找不到规则集文件”警告。
一次Google搜索显示了一篇MSDN文章,其中有Stack Overflow文章指向以及许多其他站点。
类似的问题:33020507 MSDN:VS2015 MSB3884警告
我同时安装了VS2013和VS2015。
提供警告的项目文件(以及未提供警告的项目)没有这些条目。
<CodeAnalysisRuleSetDirectories>
<CodeAnalysisRuleDirectories>
如果我从项目文件中删除其他两个条目,那么问题就消失了,这很明显,因为没有设置规则文件。
<CodeAnalysisIgnoreBuiltInRuleSets>
<CodeAnalysisIgnoreBuiltInRules>
我正在尝试使用msbuild从外部进行构建,但是VS2015也倾向于显示该问题。
有趣的是,如果我单击项目属性“代码分析器”区域中的“打开”按钮,则会得到文件。
指定不同的规则集没有区别。这使我认为可能存在环境变量设置,而没有想到任何设置。代码分析器是项目文件的功能。我可以添加目录属性,但共识是要取出路径<CodeAnalysisRule*Directories>
。
GUI使用默认值:
这是一个典型的项目文件片段。
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\x86\Debug\</OutputPath>
<DefineConstants>TRACE;DEBUG</DefineConstants>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<CodeAnalysisIgnoreBuiltInRuleSets>true</CodeAnalysisIgnoreBuiltInRuleSets>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
<Prefer32Bit>false</Prefer32Bit>
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
<CodeAnalysisRuleSet>BasicCorrectnessRules.ruleset</CodeAnalysisRuleSet>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\x64\Debug\</OutputPath>
<DefineConstants>TRACE;DEBUG</DefineConstants>
<DebugType>full</DebugType>
<PlatformTarget>x64</PlatformTarget>
<CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<CodeAnalysisIgnoreBuiltInRules>false</CodeAnalysisIgnoreBuiltInRules>
</PropertyGroup>
在不从项目文件中删除“代码分析”行的情况下,尽管再次保存项目文件只会将其重新添加,但如何消除/修复警告?