Maven - हमेशा स्रोत और javadocs डाउनलोड करें


244

क्या कोई ऐसा तरीका है जिससे मैं मावेन को हमेशा स्रोतों और जावदोकों को डाउनलोड करने के लिए कॉन्फ़िगर कर सकता हूं ? -DdownloadSources=true -DdownloadJavadocs=trueहर बार निर्दिष्ट करना (जो आम तौर पर दो बार चलने वाले मावन संकलन के साथ जाता है क्योंकि मैं पहली बार भूल गया था) बल्कि थकाऊ हो जाता है।


क्या यह ग्रहण प्लगइन के लिए है? आपको वैसे भी बहुत बार नहीं चलना चाहिए ...
sjr

1
नहीं, यह कमांड लाइन प्रोग्राम के लिए है। मुझे इसे बहुत बार चलाने की ज़रूरत नहीं है, लेकिन यह बहुत अच्छा होगा अगर मुझे इसे कभी नहीं चलाना है!
schmmd

1
कमांड लाइन क्या है? यह तब है जब आप mvn eclipse:eclipseसही करते हैं ?
sjr

14
@ sjr, हाँ स्रोत और javadocs डाउनलोड करने के लिए कोई भी निष्पादित कर सकता हैmvn eclipse:eclipse -DdownloadSources=true -DdownloadJavadocs=true
Yuriy Nakonechnyy

मुझे लगता है कि इस सवाल का अभी भी जवाब नहीं मिला है । स्वीकृत उत्तर केवल ग्रहण प्लगइन से संबंधित है। @ एलेक्सिसगामरा का जवाब निकटतम है लेकिन समाधान की "दृढ़ता" को हल नहीं करता है - यह मावेन को हमेशा ऐसा करने के लिए सेट नहीं करता है जब भी आप mvan इंस्टॉल चलाते हैं ।
होन्ज़ा ज़िदेक

जवाबों:


265

अपनी सेटिंग्स खोलें। xml फ़ाइल ~/.m2/settings.xml (यदि यह मौजूद नहीं है तो बनाएं)। जोड़े गए गुणों के साथ एक अनुभाग जोड़ें। फिर सुनिश्चित करें कि सक्रिय प्रोफ़ाइल में नई प्रोफ़ाइल शामिल है।

<settings>

   <!-- ... other settings here ... -->

    <profiles>
        <profile>
            <id>downloadSources</id>
            <properties>
                <downloadSources>true</downloadSources>
                <downloadJavadocs>true</downloadJavadocs>
            </properties>
        </profile>
    </profiles>

    <activeProfiles>
        <activeProfile>downloadSources</activeProfile>
    </activeProfiles>
</settings>

6
मैं मावेन 2.2.1 और 3.0.2 में इन प्रोफाइल गुणों की कोशिश कर रहा हूं और वे काम नहीं करते हैं। लक्ष्य भंडार भंडार आर्चीवा है। किसी और सुझाव पर क्या कोशिश की जा सकती है? मैंने भी निर्भरता का उपयोग करने की कोशिश की है: स्रोत लक्ष्य। धन्यवाद
jmend

18
इसके अलावा, ग्रहण में आप सिर्फ वरीयताएँ -> मावेन (कोई उपश्रेणी) पर जा सकते हैं। वहां, आप "डाउनलोड सोर्सिंग सोर्स / JavaDocs" देख सकते हैं। हालाँकि, कभी-कभी एक्लिप्स उस फ़ाइल को मैन्युअल रूप से नहीं बनाना चाहता है (लूना में मेरे साथ)। उस स्थिति में - वहां जाएं, इस जवाब को सेटिंग टैग में लपेटें और ग्रहण को फिर से लोड करने के लिए कहें, और यह काम करना चाहिए।
आंद्रेई बर्सन

9
इसने मेरे लिए काम किया: ग्रहण में प्राथमिकताएं -> मावेन (कोई उपश्रेणी) पर जाएं। चेक करें - "आर्टवर्क डाउनलोड करें सोर्स" - "डाउनलोड आर्टिकल जावाडॉक्स डाउनलोड करें" - "स्टार्टअप पर मावेन प्रोजेक्ट्स को अपडेट करें" (सिर्फ इसलिए कि मुझे मैनुअल तरीका नहीं मिल रहा है) फिर ग्रहण को फिर से शुरू करें। हो गया
एक प्रकार की कटार

4
यह केवल मावेन एक्लिप्स प्लगइन को प्रभावित करता है।
जिंगुगो याओ

9
यह स्वीकृत उत्तर नहीं होना चाहिए ! जैसा कि @JingguoYao ने कहा, यह केवल मावेन एक्लिप्स प्लगइन को प्रभावित करता है। मूल प्रश्न ग्रहण के लिए बाध्य नहीं था, बल्कि मावेन के लिए ही था।
होनज़ा ज़िदेक

195

मेरे मामले में "settings.xml" समाधान काम नहीं आया इसलिए मैं सभी स्रोतों को डाउनलोड करने के लिए इस कमांड का उपयोग करता हूं:

mvn dependency:sources

आप इसे अन्य मावेन कमांड के साथ भी उपयोग कर सकते हैं, उदाहरण के लिए:

mvn clean install dependency:sources -Dmaven.test.skip=true

सभी दस्तावेज़ डाउनलोड करने के लिए, निम्नलिखित कमांड का उपयोग करें:

mvn dependency:resolve -Dclassifier=javadoc

1
मुझे लगता है कि इस सवाल का अभी भी जवाब नहीं मिला है । स्वीकृत उत्तर केवल ग्रहण प्लगइन से संबंधित है। आपका उत्तर सबसे नज़दीक है लेकिन समाधान की "दृढ़ता" को हल नहीं करता है - यह मावेन को हमेशा ऐसा करने के लिए सेट नहीं करता है जब भी आप mvan इंस्टॉल चलाते हैं ।
होन्ज़ा ज़िदेक

52

बस समेकन और स्रोत और डॉक्स डाउनलोड को संबोधित करने के लिए एकल कमांड तैयार ...

mvn dependency:sources dependency:resolve -Dclassifier=javadoc

42

Google के लोगों के लिए उत्तर

में ग्रहण आप स्वचालित रूप से डाउनलोड कर सकते हैं जावाडोक और सूत्रों का कहना है

ऐसा करने के लिए, प्रोजेक्ट पर राइट क्लिक करें और उपयोग करें

  • मावेन -> जावाडॉक डाउनलोड करें
  • मावेन -> डाउनलोड स्रोत

3
और आईडिया में आप मॉड्यूल पर राइट क्लिक कर सकते हैं, और मावेन मेनू के तहत, सूत्रों और / या दस्तावेज़ीकरण को डाउनलोड करने का एक विकल्प है
forresthopkinsa

@ बिटलिस्टा ने पोस्ट की पहली पंक्ति पढ़ी। बहुत से लोग Google से यहां कुछ और देखने के लिए जाते हैं। लेकिन अंत में यहां तक ​​कि अलग-अलग कीवर्ड के साथ भी
Ghandhikus

14

मैं Maven 3.3.3 का उपयोग कर रहा हूं और उपयोगकर्ता या वैश्विक settings.xmlफ़ाइल में काम करने के लिए डिफ़ॉल्ट प्रोफ़ाइल प्राप्त नहीं कर सकता ।

वर्कअराउंड के रूप में, आप अपनी pom.xmlफ़ाइल में एक अतिरिक्त बिल्ड प्लगइन भी जोड़ सकते हैं ।

<properties>
    <maven-dependency-plugin.version>2.10</maven-dependency-plugin.version>
</properties>
<build>
    <plugins>
        <!-- Download Java source JARs. -->
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>${maven-dependency-plugin.version}</version>
            <executions>
                <execution>
                    <goals>
                        <goal>sources</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>


4

जैसा कि @ xecaps12 ने कहा, सबसे सरल / कुशल तरीका यह है कि आप अपने मावेन सेटिंग्स फ़ाइल (~ / .m2 / settings.xml) को बदलें लेकिन अगर यह आपके लिए एक डिफ़ॉल्ट सेटिंग है, तो आप इसे भी इस तरह सेट कर सकते हैं।

<profile>
  <id>downloadSources</id>
  <activation>
    <activeByDefault>true</activeByDefault>
  </activation>
  <properties>
      <downloadSources>true</downloadSources>
      <downloadJavadocs>true</downloadJavadocs>
  </properties>
</profile>

यह वास्तव में काम नहीं करता है, आप सिर्फ अप्रयुक्त वैश्विक गुणों की घोषणा कर रहे हैं। मेरा मानना ​​है कि पौराणिक समाधान से आया maven-eclipse-plugin: maven.apache.org/plugins/maven-eclipse-plugin/examples/…
inanutshellus

नहीं, इसका "हल" उत्तर का सिर्फ एक सरलीकरण;)
क्रैस

1
"हल" संस्करण भी काम नहीं करता है। (मैंने वहां भी वही टिप्पणी की, लेकिन अस्थायी रूप से हटा दिया है जबकि मैं आपके साथ हूं।) तो - क्या आप अपना जवाब कह रहे हैं (और इस तरह हल किया गया उत्तर) वास्तव में आपके लिए काम करता है ?? मेरा मतलब है, 159 लोगों ने उस गलत-या-पुराने उत्तर को अपलोड किया, इसलिए स्पष्ट रूप से यह किसी के लिए काम करता है। यदि यह आपके कहे अनुसार काम करता है, तो मैं कुछ गलत कर रहा हूं, जैसा कि इसकी टिप्पणियों में हल किए गए उत्तर पर कई लोग हैं और मुझे यह सीखने और उस काम को करने में खुशी होगी ।
inanutshellus

मुझे लगता है कि जब आप वास्तव में ग्रहण के साथ विकसित हो रहे हैं तो उन वैश्विक संस्करण को ग्रहण प्लगइन द्वारा जांचा जाता है। स्रोत लाने को ग्रहण द्वारा किया जाता है न कि कमांड लाइन पर मावेन द्वारा।
योनातन क्लॉटियर

1

मुझे लगता है कि इसे प्रति प्लगइन किया जा सकता है। इस अध्याय को मावेन पुस्तक से देखें ।

आप स्रोतों को डाउनलोड करने के लिए निर्भरता प्लगइन को कॉन्फ़िगर करने में सक्षम हो सकते हैं (भले ही मैंने इसे स्वयं करने की कोशिश नहीं की है :-)।


1

नेटबीन्स में, आप मावेन को हर प्रोजेक्ट पर जावदोक को खोलने के निर्देश दे सकते हैं:

Tools| Options| Javaआइकन | Mavenटैब | Dependenciesश्रेणी | Check Javadocकरने के लिए नीचे सेट Every Project Open

नेटबीन्स को बंद और फिर से खोलें और आपको स्टेट बार में मावेन डाउनलोड javadocs दिखाई देगा।


0

निश्चित नहीं है, लेकिन आपको अपनी सेटिंग में डिफ़ॉल्ट सक्रिय प्रोफ़ाइल सेट करके कुछ करने में सक्षम होना चाहिए। xml

देख

Http://maven.apache.org/guides/introduction/introduction-to-profiles.html देखें


आह! ठीक वैसे ही जैसा @ xecaps12 द्वारा वर्णित है
pgbsl

9
URL के टूटने की स्थिति में आपको लिंक से संबंधित भागों को वास्तव में अपने उत्तर में कॉपी करना चाहिए।
डंकन जोन्स

0

बस फ़ाइल को संशोधित करें mvn(या mvn.cmdयदि विंडोज़ में) और जो भी कमांड लाइन स्विच की आवश्यकता है उसे जोड़ दें (जैसा कि अन्य उत्तरों द्वारा उल्लेख किया गया है)। यदि आप स्थापित फ़ाइलों (जो मैं सुझाऊँगा) को संशोधित नहीं करना चाहते हैं, तो एक mymvn(या mymvn.cmd) आवरण बनाएँ mvnजो मापदंडों के साथ नियमित रूप से निवेश करता है ।


0

मुझे जार डाउनलोड करने के लिए KeyStore का उपयोग करना था। यदि आपके पास प्रमाणपत्र संबंधी कोई समस्या है तो आप इस दृष्टिकोण का उपयोग कर सकते हैं:

mvn clean install dependency:sources -Dmaven.test.skip=true -Djavax.net.ssl.trustStore="Path_To_Your_KeyStore"

यदि आप जानना चाहते हैं कि KeyStores कैसे बनाया जाता है, तो यह एक बहुत अच्छा लिंक है: प्रॉक्सी के पीछे मावेन और एसएसएल का उपयोग करने में समस्याएं


0

निर्भरता स्तर (pom.xml) के स्रोतों के लिए आप जोड़ सकते हैं:

<classifier>sources</classifier>

0

केविनरपे के उत्तर का पालन करने के लिए यह दोनों स्रोतों और जावदोस्क:

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-dependency-plugin</artifactId>
                <version>3.1.1</version>
                <executions>
                    <execution>
                        <goals>
                            <goal>sources</goal>
                            <goal>resolve</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                    <classifier>javadoc</classifier>
                </configuration>
            </plugin>
        </plugins>
    </build>
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.