स्थिति:स्वचालित रूप से जेनकींस में पोम फ़ाइल से अनिवार्य SonarQube गुण प्राप्त
मैं SonarQube (5.4) के साथ अपने प्रोजेक्ट का विश्लेषण करना चाहते जेनकींस (1.642.4) से शुरू हो रहा। यह एक जावा परियोजना मेवेन के साथ निर्माण है।
- पोस्ट क्रिया "Maven साथ SonarQube विश्लेषण" का निर्माण, लेकिन यह पदावनत है, तो मैं यह
- बिल्ड पश्चात चरण का उपयोग नहीं करना चाहते हैं ":
मैं विश्लेषण को गति प्रदान करने के दो तरीके को देखने के सोनारक्यूब स्कैनर निष्पादित करें ", अनुशंसित तरीका है।
समस्या:
अगर मैं पदावनत कार्रवाई पोस्ट बिल्ड का उपयोग करें, सोनार परियोजना विन्यास के लिए गुण स्वचालित रूप से परियोजना पोम से हुआ है।
यह मैं सिफारिश की पोस्ट का निर्माण चरण का उपयोग करें, मैं अपवाद
आप 'अज्ञात' के लिए अनिवार्य गुण निम्नलिखित को परिभाषित करना होगा प्राप्त करते हैं: sonar.projectKey, sonar.projectName, sonar.projectVersion, sonar.sources
अवांछित समाधान:
समाधान जावा परियोजना में, आवश्यक गुण प्रदान करने के लिए sonar-project.properties फ़ाइल के माध्यम से है या जेनकींस चरण में पैरामीटर के माध्यम से।
आईएमएचओ: यह नकल है। सभी प्रासंगिक सूचनाओं को मेवेन पोम में परिभाषित किया गया है: प्रोजेक्टकी को आर्टिफैक्ट आईडी, प्रोजेक्टनाम और प्रोजेक्ट वर्जन से लिया जा सकता है मैवेन में समान गुण हैं। विशेष रूप से प्रोजेक्ट वर्जन महत्वपूर्ण है। मैं प्रत्येक रिलीज के बाद प्रोजेक्ट संस्करण को अपडेट नहीं करना चाहता (या इसे स्वचालित रूप से अपडेट करने के लिए रिलीज प्लगइन में कुछ कोड लिखें)।
मैं क्या चाहता हूँ
मैं सिफारिश की पोस्ट जेनकींस में बिल्ड कदम है, फिर से परिभाषित बिना मेरे सभी परियोजना सोनार को खुश करने के लिए सभी परियोजना गुणों का उपयोग करना चाहते हैं। इसके बजाय सोनार/जेनकींस/प्लगइन/जो भी मेरे मैवेन पोम फ़ाइल से गुण प्राप्त करना चाहिए। क्या कोई अतिरिक्त प्लगइन है जिसका मैं उपयोग कर सकता हूं? क्या मैं अपने जेनकींस-सोनार-प्लगइन को फिर से कॉन्फ़िगर कर सकता हूं?
मैं अपने पोम/प्रोजेक्ट में कोई सोनार विशिष्ट जानकारी प्रदान नहीं करना चाहता, क्योंकि परियोजना को सोनार की परवाह नहीं करनी चाहिए। इसमें परियोजना बनाने के लिए आवश्यक जानकारी होनी चाहिए।
आपके उत्तर के लिए धन्यवाद, लेकिन लिंक किए गए दस्तावेज़ों में आप निम्न पाठ देख सकते हैं: "मेवेन विश्लेषण के लिए पोस्ट-बिल्ड एक्शन को बहिष्कृत किया गया है। मेवेन विश्लेषण के लिए पोस्ट-बिल्ड एक्शन को बहिष्कृत किया गया है।" तो दुर्भाग्यवश यह समाधान मेरी आवश्यकताओं के अनुरूप नहीं है। –
आप दस्तावेज़ीकरण को गलत समझ रहे हैं: पोस्ट-बिल्ड ** एक्शन ** को बहिष्कृत किया गया है। मेरे उत्तर में और दस्तावेज़ीकरण में (चेतावनी के नीचे) एक मानक मेवेन बिल्ड चरण (और पर्यावरण चर इंजेक्शन) का उपयोग करने का अनुशंसित तरीका है। इसे देखें [चित्रण] (http://i68.tinypic.com/x4er8y.png)। –
आप सही हैं। इस मेवेन लक्ष्य को पोस्ट बिल्ड एसटीईपी के रूप में निष्पादित किया जाता है। तो बहिष्करण उस समाधान को संदर्भित नहीं किया जाता है। मैं अपना जवाब हटा दूंगा, क्योंकि जैसा आपने कहा है, स्वचालित परियोजना संरचना उपयोग के कारण यह एक बुरा विचार है। बहुत बहुत धन्यवाद –