2012-04-30 11 views
7

मैं कोशिश कर रहा हूं कि चेकस्टाइल को कोई फ़ाइल प्रकार दिया जाए, लेकिन किसी भी चीज़ को अनदेखा करें जो .java फ़ाइल नहीं है। मैं फ़िल्टर बना है, लेकिन यह काम किया जाना प्रतीत नहीं होता:क्या एंट के बिना केवल .java फाइलों पर चेकस्टाइल चलाने का कोई तरीका है?

public class DotJavaFilter 
    extends AutomaticBean 
    implements Filter 
{ 

    public DotJavaFilter() 
     throws PatternSyntaxException 
    { 
    } 

    public boolean accept(AuditEvent aEvent) 
    { 
     final String fileName = aEvent.getFileName(); 
     return fileName.endsWith(".java"); 
    } 
} 

मैं सीएस फ़ाइलों की एक निर्देशिका देना चाहते और यह केवल जावा लोगों पर कार्रवाई करना होगा।

+0

कृपया कोड, इनपुट/आउटपुट और HTML या XML जैसे संरचित दस्तावेज़ों के लिए कोड स्वरूपण का उपयोग करें। ऐसा करने के लिए, नमूना का चयन करें और संदेश पोस्टिंग/संपादन फ़ॉर्म के ऊपर '{}' बटन पर क्लिक करें। –

उत्तर

6

आप इस तरह कमांड लाइन पर चला सकते हैं:

java -jar checkstyle-5.5-all.jar -c docs/sun_checks.xml -r /path/to/src 

आप बैश का उपयोग कर रहे हैं, तो आप इस तरह globstar चालू कर सकते हैं और उसके बाद की प्रक्रिया केवल जावा फ़ाइलें:

shopt -s globstar 
java -jar checkstyle-5.5-all.jar -c docs/sun_checks.xml -r /path/to/src/**/*.java 

Checkstyle कमांड लाइन प्रलेखन here है।


अद्यतन: एक दमन फिल्टर

का उपयोग करते हुए एक छिपाता फ़ाइल जो वर्ग फ़ाइलों पर सभी चेक अनदेखी करने के लिए बनाएँ। आप अन्य फ़ाइल प्रकारों के लिए रेगेक्स जोड़ सकते हैं जिन्हें आप रुचि नहीं रखते हैं।

suppressions.xml:

<suppressions> 
    <suppress checks="." files=".*\.class"/> 
</suppressions> 

अपने चेक करने के लिए एक दमन फ़िल्टर जोड़ें दायर:

my_checks.xml:

<module name="SuppressionFilter"> 
    <property name="file" value="suppressions.xml"/> 
</module> 

भागो यह:

java -jar checkstyle-5.5-all.jar -c my_checks.xml -r /path/to/src 

दमन फ़िल्टर पर दस्तावेज़ीकरण here पाया जा सकता है।

+0

नहीं, यह इस तरह काफी काम नहीं करता है। यदि आप सीएस को एक मॉड्यूल निर्देशिका देते हैं जिसमें स्रोत फाइलें हैं और इसमें संकलित क्लास फाइलें हैं ... सीएस .clas फ़ाइलों के साथ .java फ़ाइलों को स्कैन और स्कैन करेगा। मेरे उपयोगकर्ता नहीं चाहते हैं कि यह गैर-जावा फाइलों को पिकअप करे। –

+0

सुधार: यह sun_checks.xml का उपयोग करके काम करता है। जब मैं अपनी खुद की कॉन्फ़िगरेशन फ़ाइल डालता हूं, तो यह सबकुछ उठाता है। –

+0

एक दमन फ़िल्टर का उपयोग करने पर मेरा अपडेट देखें। – dogbane

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

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