मैं आउटपुट कोड विश्लेषण जानकारी के लिए msbuild प्राप्त करने की कोशिश कर रहा हूं जैसे यह वीएस में करता है। मेरे पास VS में "CodeAnalysis" नामक मेरी प्रोजेक्ट के लिए कॉन्फ़िगरेशन है जो निर्माण (कोड के न्यूनतम नियम के साथ) पर कोड विश्लेषण चलाने के लिए सेट किया गया है। वैसे भी यह वीएस में ठीक काम कर रहा है, लेकिन जब मैं कमांड लाइन से msbuild चलाता हूं तो यह केवल मूल निर्माण चेतावनियां दिखाता है और यह बिल्कुल कोड विश्लेषण नहीं चलाता है। क्या कोई जानता है कि यह क्यों हो रहा है?RunCodeAnalysis = सच कमांड प्रॉम्प्ट में काम नहीं कर रहा है (MSBuild)
प्रोजेक्ट फाइल में विन्यास:
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'CodeAnalysis|AnyCPU'">
<OutputPath>bin\</OutputPath>
<CodeAnalysisRuleSet>C:\Program Files\Microsoft Visual Studio 10.0\Team Tools\Static Analysis Tools\Rule Sets\MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
<RunCodeAnalysis>true</RunCodeAnalysis>
आदेश लाइन:
msbuild Solution.sln /p:Configuration=CodeAnalysis /t:Rebuild
मैं भी करने की कोशिश की:
msbuild Solution.sln /p:RunCodeAnalysis=true /t:Rebuild
नैदानिक स्तर लॉगिंग (/ fl /flp:v=diag ;logfile=diag.log) के साथ चलाएं और खोजें कि RunCodeAnalysis लक्ष्य क्यों छोड़ा जा रहा है। इसे PrepareForRun की निर्भरता के रूप में चलाया जाना चाहिए जो CoreBuild की निर्भरता के रूप में चलाया जाता है। –
जांच करें कि गुण $ (CodeAnalysisPath), $ (CodeAnalysisTargets) पहले से ही मान्य कोड विश्लेषण टूलींग पथ को सेट और संदर्भित कर रहा है, मूल रूप से बस उन्हें स्क्रिप्ट – sll
@BrianKretzler के अंदर धन्यवाद प्रिंट के लिए धन्यवाद। क्या विशेष रूप से कुछ मुझे ढूंढना चाहिए? मैंने निम्नलिखित पाया: CoreBuildDependsOn = PrepareForRun; PrepareForRunDependsOn = RunCodeAnalysis; मैंने यह भी देखा कि कोरबिल्ड एक्शन में यह कहता है: झूठी स्थिति के कारण कार्य "कॉलटाइटल" छोड़ दिया गया; ('$ (UnloadProjectsOnCompletion)' == 'true') का मूल्यांकन किया गया था ('false' == 'true') ..... क्या यह संबंधित हो सकता है? –