2013-07-05 3 views
6

के साथ मेवेन निर्भरता 3 प्रश्न:जावडॉक्स

नीचे जुनीट के लिए दो मेवेन निर्भरताएं हैं। मैं घंटों के लिए इंटरवेब्स को खराब कर रहा हूं और यह निर्धारित नहीं कर सकता कि दूसरा वाला जावाडोक + कोड या केवल जावाडोक है या नहीं। क्या मुझे एक या दोनों की आवश्यकता है? इसके अलावा, उत्पादन के निर्माण में अभी तक विकास के लिए परियोजना में जावाडॉक्स को शामिल करने का सबसे प्रभावशाली तरीका क्या है? (मैं नहीं मैन्युअल रूप से हर मशीन पर हर निर्भरता के लिए javadocs डाउनलोड करने के लिए पसंद करेंगे।)

<dependency> 
    <groupId>junit</groupId> 
    <artifactId>junit</artifactId> 
    <version>4.11</version> 
</dependency> 

~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~

<dependency> 
    <groupId>junit</groupId> 
    <artifactId>junit</artifactId> 
    <version>4.11</version> 
    <classifier>javadoc</classifier> 
</dependency> 

संपादित करें: प्रश्न:

  • इन निर्भरता के बीच क्या अंतर है?
  • क्या मुझे दोनों निर्भरता & पर जावाडोक का उपयोग करने में सक्षम होने के लिए दोनों की आवश्यकता है?
  • विकास के लिए जावाडॉक्स को शामिल करने के लिए सबसे अच्छा अभ्यास क्या है?
+0

यह मदद करनी चाहिए (यदि मुझे आपका प्रश्न सही में से एक मिलता है): http://stackoverflow.com/questions/5780758/maven-always-download-sources-and-javadocs –

+0

@Andreas_D मैंने पहले उस पर देखा । मैंने अनुशंसित ऐड को अभी तक इस चरण में थोड़ा खो दिया है: "फिर सुनिश्चित करें कि सक्रिय प्रोफाइल में नई प्रोफ़ाइल शामिल है।" – AnthonyW

+0

कोड को अपने '~/.m2/settings.xml' फ़ाइल में उत्तर से कॉपी करने के लिए पर्याप्त होना चाहिए। आपको प्रोफ़ाइल प्रोफाइल में प्रोफ़ाइल तत्व जोड़ना पड़ सकता है (यदि पहले से ही कुछ परिभाषित हैं) –

उत्तर

8

आम तौर पर, आपका आईडीई एक मेवेन प्रोजेक्ट में आपके लिए जावाडोक के संकल्प को संभालेगा। यह माना जाता है कि आपका आईडीई मैवेन को समझता है - उदा। netbeans, intellij या ग्रहण w/m2e।

दूसरा आर्टिफैक्ट केवल जवाडॉक्स है। पहला आर्टिफैक्ट कोड है। जावाडोक आर्टिफैक्ट को निर्भरता के रूप में शामिल करने का लगभग कोई अच्छा कारण नहीं है।

+2

आपको धन्यवाद !! वह दूसरा पैराग्राफ अकेले एसओ पर आधे दर्जन खुले प्रश्नों का उत्तर देता है। – AnthonyW

+1

मैं ग्रहण w/m2e का उपयोग कर रहा हूं। एक बार जब मैं निर्भरता में बंधे, तो इस उदाहरण में जुनीट, कहीं कहीं मैं सही क्लिक कर सकता हूं और दस्तावेज़ों को खींचने के लिए कह सकता हूं? – AnthonyW

+4

यदि आप jtrlnit में से किसी एक तरीके से ctrl + पर क्लिक करते हैं, तो आपको इसे कोड में खींचना चाहिए। फिर जब आप विधियों पर माउस (उदा। 'Org.junit.Assert.assertNotNull'), तो आपको javadocs populate देखना शुरू करना चाहिए यदि वे पहले से शुरू नहीं हुए हैं। –

1

मैंने इस समस्या पर ठोकर खाई जब मैंने ग्रहण में एक मेवेन प्रोजेक्ट बनाया और न ही जावडोक और न ही मेरी निर्भरताओं का स्रोत जहां मेरी परियोजना से जुड़ा हुआ था, और मुझे आश्चर्य हुआ कि कौन सी निर्भरता जोड़ने की है।

क्या मदद की मुझे मेरे pom.xml करने

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-source-plugin</artifactId> 
     </plugin> 

     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-javadoc-plugin</artifactId> 
     </plugin> 
    </plugins> 
</build> 

जोड़ने था। इस तरह, आपको केवल पहली निर्भरता का उपयोग करना होगा, और मैवेन/ग्रहण दूसरे को डाउनलोड करने का ख्याल रखता है (जो कि, दूसरे उत्तर में इंगित किया गया है, केवल जावाडोक)।

6

आम तौर पर जावाडॉक्स मुख्य रूप से निर्भरता के रूप में उपयोग नहीं किए जाते हैं। क्योंकि ये संकलन और न ही रनटाइम पर आवश्यक हैं। यह विकासशील या डिबगिंग के दौरान डेवलपर की मदद करने के लिए है।

जावा आईडीई ग्रहण का उपयोग करके मानते हुए हम संदर्भित जावा दस्तावेज़ों का उपयोग कर सकते हैं। निम्नलिखित दृष्टिकोण हैं जिनसे हम संबंधित जार के साथ जावाडॉक्स/स्रोतों को जोड़ सकते हैं।

1. यदि यह गैर Maven परियोजना है: javadocs जार या ज़िप की गई फ़ाइल, जो कुछ भी उपलब्ध डाउनलोड करें और कुछ निर्देशिका में रख दिया। आईडीई ग्रहण में एप्लिकेशन प्रोजेक्ट पर राइट क्लिक करें, गुण क्लिक करें और जावा बिल्ड पथ का चयन करें, फिर जावा बिल्ड पथ के अंतर्गत टैब लाइब्रेरी का चयन करें। अब जार का विस्तार करें जिसे आप जावा डॉक्स/स्रोत से लिंक करना चाहते हैं। जावाडोक स्थान लिंक का चयन करें और संपादन बटन पर क्लिक करें, एक नई विंडो दिखाई देती है जहां हमें javadocs jar पथ चुनने की आवश्यकता होती है। ठीक क्लिक करें और हमने संबंधित जार के साथ जावाडोक/स्रोत को जोड़ा है।

enter image description here

2।यदि यह एक मेवेन प्रोजेक्ट है

यदि हम मेवेन प्रोजेक्ट का उपयोग कर रहे हैं तो परियोजना के तहत परियोजना एक्सप्लोरर व्यू में परियोजना के तहत मेवेन निर्भरता के तहत जार फ़ाइलों पर जाएं। अब जारडोक/स्रोत को जोड़ना चाहते हैं, जार फ़ाइल पर राइट क्लिक करें, M मेवेन चुनें, फिर उस परियोजना के साथ लिंक करना चाहते हैं, जिसे जावाडोक या स्रोत पर क्लिक करें। अब आईडीई स्वचालित रूप से जवाडोक/स्रोत डाउनलोड करेगा और इसे परियोजना में संबंधित जार से लिंक करेगा।

enter image description here

आप IDE में परियोजना पर राइट क्लिक करके पुष्टि कर सकते हैं और पथ निर्माण जावा पर क्लिक करें और पथ जावा का निर्माण के तहत पुस्तकालय टैब का चयन करें और जब आप क्लिक करें, फिर वांछित जार का विस्तार, यहाँ संपादन बटन आपको छवि में नीचे दिखाए गए संबंधित जार के साथ जावाडोक/स्रोत के लिंक किए गए पथ को देखेंगे।

enter image description here

3. यदि यह Maven परियोजना है और हम डिफ़ॉल्ट व्यवहार सेट कर रहे हैं:

ग्रहण aquatically शुरू में मुख्य आवश्यक जार के साथ जावाडोक/स्रोत डाउनलोड करेगा। परियोजना में जुड़े सभी जारों के लिए जावडोक/स्रोत डाउनलोड करने के लिए मेवेन को डिफ़ॉल्ट रूप से निर्देश स्थापित करना।

विंडोज क्लिक करें - वरीयताओं - Maven का चयन करें और चेकबॉक्स डाउनलोड विरूपण साक्ष्य जावाडोक क्लिक के रूप में नीचे

enter image description here

अब पता चला पर क्लिक करें लागू करते हैं और यह बचाने के लिए और अब जब आप नए Maven परियोजना बनाने, डिफ़ॉल्ट Javadocs द्वारा परियोजना में सभी आश्रित जारों के साथ डाउनलोड और लिंक हो जाएगा।
आप प्रोजेक्ट और प्रॉपर्टीज पर राइट क्लिक करके सत्यापित कर सकते हैं और जावा बिल्ड पथ के तहत जावाडॉक्स नीचे दिखाए गए सभी जार से जुड़े हुए हैं।

enter image description here

अपनी परियोजना Maven परियोजना है तो यह है, क्योंकि इस दृष्टिकोण आईडीई और Maven का उपयोग करके 2 दृष्टिकोण का उपयोग करने के लिए सबसे अच्छा हमेशा जावाडोक/स्रोत का सही संस्करण को डाउनलोड करने का ख्याल रखता है और साथ यह जुड़ा हुआ सापेक्ष जार भी।

दृष्टिकोण 3 बिट महंगा है क्योंकि जावाडोक/सूत्रों निर्भर जार forall डाउनलोड किया जाएगा, आप सभी निर्भर जार के लिए javadocs/स्रोतों के लिए कोई दिलचस्पी नहीं कर रहे हैं हो सकता है।