2009-01-29 13 views
6

मेरे पास एक प्रोजेक्ट है जिसमें मैवेन निर्भरता एक जार फ़ाइल है जिसमें एक एक्सएमएल फ़ाइल शामिल है जहां मैंने चेकस्टाइल के लिए अपने नियम संग्रहीत किए हैं। मैंने सोचा कि बस इस कॉन्फ़िगरेशन का उपयोग करना ठीक होगा: <configLocation> mycheckstyle.xml </configLocation >। मेरी समझ यह है कि फ़ाइल को क्लासपाथ पर खोजा जाना चाहिए और मेरी जार फ़ाइल एक मेवेन निर्भरता है इसलिए इसे पाया जाना चाहिए, हालांकि मुझे संसाधन प्राप्त नहीं हुआ है। कोई सुझाव? अग्रिम धन्यवाद ..मैवेन 2 चेकस्टाइल कॉन्फ़िगरेशन स्थान

कुकू

उत्तर

10

अपनी प्लगइन कॉन्फ़िगरेशन पर निर्भरता अनुभाग जोड़ने का प्रयास करें।

जैसे,

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-checkstyle-plugin</artifactId> 
    <dependencies> 
     <dependency> 
     <groupId>com.example.whizbang</groupId> 
     <artifactId>build-tools</artifactId> 
     <version>1.0</version> 
     </dependency> 
    </dependencies> 
    </plugin> 

अधिक जानकारी के लिए Maven Checkstyle Plugin - Multimodule Configuration देखें।

+0

यह सही उत्तर है। –

+1

यह हमारी टीम के लिए बहुत उपयोगी था। एक बार जब हमें एहसास हुआ कि यह संभव था, तो हमने अपनी चेकस्टाइल कॉन्फ़िगरेशन को संभालने के लिए 'जार' पैकेजिंग के साथ सरल पीओएम बनाया।अब इसे प्रबंधित करना बहुत आसान है, संस्करण (यदि आवश्यक हो), और परियोजनाओं में साझा करें। – Allan

0

रूप Checkstyle plugin page में बताया गया है,

configLocation:

उपयोग करने के लिए एक्सएमएल विन्यास के स्थान निर्दिष्ट करता है।

संभावित मूल्य एक फाइल सिस्टम पथ, एक यूआरएल, या क्लासपाथ संसाधन हैं।

मैं कभी नहीं कि मेरी परियोजना पर किया ...

आप यह सुनिश्चित करें कि जार एक्सएमएल फ़ाइल युक्त classpath में है जब checkstyle प्लगइन शुरू कर रहा है कर रहे हैं?

0

मेरे पास एक अभिभावक है जो चेकस्टाइल प्लगइन निर्दिष्ट करता है और इसके संसाधन फ़ोल्डर में उपयुक्त mycheckstyle.xml है। मैं अपने माता-पिता संसाधन फ़ोल्डर का एक जार बनाने के लिए मेवेन असेंबली प्लगइन का उपयोग करता हूं और उस जार को अपने बच्चे में निर्भरता के रूप में परिभाषित करता हूं। तो जब बच्चे को चेकस्टाइल प्लगइन प्राप्त होता है + यह माता-पिता से कॉन्फ़िगरेशन है, तो यह mycheckstyle.xml को ढूंढने में सक्षम होना चाहिए। मैंने चेकस्टाइल प्लगइन पेज पर निर्देशों का पालन किया है लेकिन यह काम नहीं किया है।

+0

के साथ नहीं मिलेगा आपका मतलब है कि आपने यहां क्या समझाया है: http://maven.apache.org/plugins/maven-checkstyle-plugin/examples/mu lti-module-config.html? क्या आप अपनी प्रारंभिक पोस्ट संपादित कर सकते हैं और इसमें कुछ pom.xml जानकारी डाल सकते हैं ... – romaintaz

+0

बिल्कुल ऐसा नहीं है। यह बहु मॉड्यूल नहीं है। यह माता-पिता को एक बच्चे के लिए सरल विरासत है। अभिभावक के पास अपने रिपोर्टिंग टैग के भीतर चेकस्टाइल प्लगइन है और बच्चे को विरासत में मिला है। मैं कॉन्फ़िगरेशन फ़ाइलों के लिए बच्चे को जार के रूप में माता-पिता से संसाधन जोड़ता हूं। – kukudas

0

आप अपने स्वयं बनाया और संकलित जांच के लिए एक स्थानीय Maven भंडार है, तो कृपया ध्यान रखें

<repositories> 
    <repository> 
     <id>my local repository</id> 
     <url>file:${basedir}/.m2artifacts</url> 
    </repository> 
    <!-- ... --> 
</repositories> 

लेकिन यह भी

<pluginRepositories> 
    <pluginRepository> 
     <id>my local repository</id> 
     <url>file:${basedir}/.m2artifacts</url> 
    </pluginRepository> 
    <!-- ... --> 
</pluginRepositories> 

को परिभाषित करने अन्यथा प्लगइन निर्भरता सिर्फ दिखेगा भूल नहीं करने के लिए केंद्रीय मेवेन रेपो में लेकिन आपकी स्थानीय जेएआर फ़ाइल को आपके चेक-क्लास

संबंधित मुद्दे