MSBuild からルールセットを指定するにはどうすればよいですか
-
02-10-2019 - |
質問
VS 2010 にアップグレードした後、MSBUILD /p:RunCodeAnalysis=true が期待どおりに動作しません
msbuild solution.sln /p:RunCodeAnalysis=true
ビルドを高速化するために、DEBUG ビルドの CODE_ANALYSIS 定数を削除しました。ただし、これは、上記の msbuild コマンドを実行すると、プロジェクトのプロパティ ページの [コード分析] タブで指定したルールセットを使用するのではなく、すべてのルールがデフォルトになります。
したがって、コード アナラシス (CODE_ANALYSIS 定数が定義されている) を実行するには、リリース モードでビルドする必要があります。
msbuild solution.sln /p:RunCodeAnalysis=true /p:Configuration=release
ただし、これは開発マシン上でリリース ビルドを取得することを意味します。そして、これは私たちの設定にいくつかの副作用をもたらします。
質問:コマンドラインからルールセットを指定するにはどうすればよいですか。私は次のようなことを期待していました:
msbuild solution.sln /p:RunCodeAnalysis=true /p:foobar=rules.ruleset
解決
を使用する必要があります。 CodeAnalysisRuleSet
財産。
msbuild solution.sln /p:RunCodeAnalysis=true;CodeAnalysisRuleSet=GlobalizationRules.ruleset
事前定義されたルールセットのリストは次のとおりです。
AllRules.ruleset
BasicCorrectnessRules.ruleset
BasicDesignGuidelineRules.ruleset
ExtendedCorrectnessRules.ruleset
ExtendedDesignGuidelineRules.ruleset
GlobalizationRules.ruleset
MinimumRecommendedRules.ruleset
SecurityRules.ruleset
所属していません StackOverflow