2015-08-26 13 views
5

क्या ऐसे कोडों की संख्या सूचीबद्ध करने के लिए स्रोत कोड का विश्लेषण करने का कोई आसान तरीका है जिनके पास कोई javadocs नहीं है?Javadocs के बिना सभी कक्षाओं को सूचीबद्ध करें

तकनीकी ऋण अभ्यास के हिस्से के रूप में मैं इन सभी फ़ाइलों को सूचीबद्ध करना चाहता हूं और मूल लेखकों को लिखने के लिए टीम के बीच सूची साझा करना चाहता हूं।

नोट: हम निर्माण प्रणाली

अद्यतन ... तो खाली javadocs डिफ़ॉल्ट रूप से बनाया हो लेकिन हमारे devs उन्हें बहुत में भरा havnt के रूप में Gradle उपयोग कर रहे हैं। आईडी उन सभी वर्गों को देखने में सक्षम होना पसंद करती है जिनके पास कक्षा स्तर पर दस्तावेज़ में कोई विवरण नहीं है। मैं तरीकों के बारे में ज्यादा नहीं सोचता।

+0

आपकी समस्या एक बहुत लगता है इससे अधिक जटिल, क्योंकि आप "javadoc" कैसे परिभाषित करते हैं? क्या कक्षा स्तर, या विधि स्तर पर भी टिप्पणियां पर्याप्त हैं। क्या होगा यदि आपके पास **/@Author Alex/** जैसे स्वत: जेनरेटेड जावाडोक हैं। यह तकनीकी रूप से एक जावाडोक है लेकिन इसमें कुछ भी नहीं है –

+0

स्पष्ट रूप से वहां होना चाहिए। हमारे पास सोनार क्यूब पर ऐसी रिपोर्ट है, हालांकि अगर मुझे याद है कि यह अनियंत्रित सार्वजनिक तरीकों की संख्या दिखाता है। – John

+0

सोनारक्यूब के बारे में बोलते हुए, इसे अपने निरंतर एकीकरण ढेर में क्यों न जोड़ें? – NiziL

उत्तर

5

Checkstyle का उपयोग करने का एक आसान तरीका होगा।

जार फ़ाइल डाउनलोड करें और एक config एक्सएमएल फ़ाइल (javadoc_checks.xml) इस प्रकार बना:

<module name="Checker"> 
    <module name="TreeWalker"> 
     <module name="JavadocType"/> 
     <module name="JavadocMethod"/> 
     <module name="JavadocVariable"/> 
     <module name="JavadocStyle"/> 
    </module> 
</module> 

अब निम्न कमांड चलाएं (यह मानते हुए सब कुछ एक ही निर्देशिका में है और src अपने कोड शामिल):

java -jar checkstyle-6.9-all.jar -c javadoc_checks.xml src/ 

, उदाहरण के लिए, तुम सिर्फ वर्गों और इंटरफेस के लिए javadocs लापता के लिए जाँच करना चाहते हैं, तो आप सिर्फ इस config XML में की जरूरत है:

<module name="Checker"> 
    <module name="TreeWalker"> 
     <module name="JavadocType"/> 
    </module> 
</module> 

और उत्पादन होगा कुछ की तरह:

C:\src\com\example\Test.java:137: Javadoc comment missing. 
C:\src\com\example\Test1.java:3: Javadoc comment missing. 
C:\src\com\example\Test2.java:12: Javadoc comment missing. 

वहाँ विकल्पों में से एक बहुत कुछ कर रहे हैं, तो आप उन्हें में देख सकते हैं:

http://checkstyle.sourceforge.net/config_javadoc.html

http://checkstyle.sourceforge.net/cmdline.html

+0

ऐसा लगता है कि मैं क्या देख रहा हूं। धन्यवाद। मैं इसे आज़माता हूं और आपको बताता हूं कि मैं कैसे चलता हूं। बहुत सराहना की। –

+0

इस दृष्टिकोण के साथ समस्या यह है कि इंटेलिज हमारे लिए फॉर्म/** * में हमारे लिए जेडॉक्स उत्पन्न कर रहा है * 18/08/2015 को बॉब द्वारा बनाया गया। */यह एक जावाडोक के रूप में दिखाई देता है भले ही यह सब बेकार है। मुझे उन कक्षाओं को खोजने की ज़रूरत है जिनके पास "0 द्वारा निर्मित" लाइन –

+0

कोई और जानकारी नहीं है, यदि आप जावाडॉक "अमान्य" हैं तो आप त्रुटि को फेंकने के लिए चेकस्टाइल को कॉन्फ़िगर कर सकते हैं। Http://checkstyle.sourceforge.net/config_javadoc.html पर दस्तावेज़ देखें। उदाहरण के लिए, आप 'NonEmptyAclclauseDescription' मॉड्यूल को सक्रिय कर सकते हैं (javadocs जो उदाहरण के लिए @param या @return अस्वीकार नहीं किया जाएगा) या 'सारांश द्वारा निर्मित" के साथ' सारांश जेवाडोक चेक '' (जावा द्वारा निर्मित किया गया है) (javadocs जिसमें वह टेक्स्ट होगा अस्वीकृत)। –

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