كيف يمكنني تحديد مجموعة قواعد من MSBuild
-
02-10-2019 - |
سؤال
بعد الترقية إلى مقابل 2010 MSBuild /P: RunCodeanalysis = TRUE لا يعمل كما هو متوقع
msbuild solution.sln /p:RunCodeAnalysis=true
للحصول على بناء أسرع ، أزلنا ثابت Code_analysis لبناء التصحيح. ولكن هذا يعني thet عند تشغيل أمر MSBuild أعلاه ، فإنه يتقلب إلى جميع القواعد ، بدلاً من استخدام مجموعة القواعد التي حددناها في علامة التبويب "تحليل التعليمات البرمجية" في صفحة خاصية المشروع.
لذا ، أحتاج الآن إلى البناء في وضع الإصدار لتشغيل رمز alyasis (الذي يحدد code_analysis ثابت):
msbuild solution.sln /p:RunCodeAnalysis=true /p:Configuration=release
ومع ذلك ، هذا يعني أننا نحصل على إصدار إصدار على آلات Dev. وهذا له بعض الآثار الجانبية في إعدادنا.
سؤال: كيف يمكنني تحديد النقل من سطر الأوامر. كنت آمل شيئًا مثل:
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