मैं कमांड लाइन से Maven Javadoc प्लगइन को कैसे निष्क्रिय कर सकता हूं?


231

Pom.xml में मैंने इस तरह की घोषणा की है

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-javadoc-plugin</artifactId>
        <executions>
            <execution>
                <id>attach-javadocs</id>
                <goals>
                    <goal>jar</goal>
                </goals>
            </execution>
        </executions>
    </plugin>

क्या कमांड लाइन से उसे बंद करने का कोई तरीका है?

मुझे पता है कि मैं इसे एक प्रोफ़ाइल में निकाल सकता हूं, लेकिन यह वह नहीं है जो मैं चाहता हूं।

जवाबों:


437

जावदोक पीढ़ी को संपत्ति maven.javadoc.skipको सही [ 1 ] पर सेट करके छोड़ दिया जा सकता है

-Dmaven.javadoc.skip=true

(और गलत नहीं)


1
बाल मॉड्यूल के साथ लेने के लिए दृष्टिकोण के लिए @ क्रिस्टोफ-टोबियास शेंके का उत्तर देखें।
इको

इस समस्या से बचने के लिए इस तर्क को सीधे जेनेकिन्स में भी सेट किया जा सकता है (कॉन्फिग सिस्टम में परिभाषित ग्लोबल MAVEN_OPTS में)
किंग मिडास

11
यह मेरे लिए काम नहीं करता था, लेकिन यह पता चला कि जब आप मावेन रिलीज प्लगइन का उपयोग करते हैं, तो आपको इस पैरामीटर को अलग तरीके से पारित करने की आवश्यकता होती है। यह काम किया mvn release:perform -Darguments="-Dmaven.javadoc.skip=true":।
पाट्स

181

ऐसा लगता है, यह सरल तरीका है

-Dmaven.javadoc.skip=true

रिलीज-प्लगइन के साथ काम नहीं करता है। इस मामले में आपको "तर्क" के रूप में पैरामीटर पास करना होगा

mvn release:perform -Darguments="-Dmaven.javadoc.skip=true"

9
यदि आपको दो तर्क जोड़ने की आवश्यकता है, तो आप उन्हें इस तरह एक स्थान के साथ अलग कर सकते हैं-Darguments="-DskipTests -Dmaven.javadoc.skip=true"
ग्राहम

4
यह रूट-लेवल pom.xml में रिलीज़ प्लग इन <configuration><arguments>-DskipTests -Dmaven.javadoc.skip=true</arguments></configuration>
कॉन्फिगर

1
इसके अलावा, स्किपटेस्ट एक मजबूत स्वाद में आता है जो परीक्षणों के संकलन को भी छोड़ देता है:-Dmaven.tests.skip=true
क्लार्क

120

आप maven.javadoc.skipप्लगइन के निष्पादन को छोड़ने के लिए संपत्ति का उपयोग कर सकते हैं , मोजो के जेवाडॉक द्वारा जा रहा है। आप मान को मावेन संपत्ति के रूप में निर्दिष्ट कर सकते हैं:

<properties>
    <maven.javadoc.skip>true</maven.javadoc.skip>
</properties>

या कमांड-लाइन तर्क -Dmaven.javadoc.skip=trueके रूप में:, Javadocs की पीढ़ी को छोड़ने के लिए।


1
यह उत्तर वास्तव में प्रश्न का उत्तर नहीं देता है, क्योंकि इसमें कहा गया है कि स्विच को कमांड लाइन के माध्यम से किया जाना चाहिए।
सिन्दिशा मिहाजलोव्स्की

3
यह एक मल्टी-मॉड्यूल प्रोजेक्ट के लिए एकदम सही समाधान है जिसमें कुछ मॉड्यूल किसी भी जेवॉडोक को उत्पन्न नहीं करते हैं और अन्यथा त्रुटि उत्पन्न करते हैं।
इमैनुएल बोर्ग

19

रूट-स्तर pom.xml में रिलीज़ प्लगइन कॉन्फिगर में जोड़ें:

<configuration>
    <arguments>-Dmaven.javadoc.skip=true</arguments>
</configuration>

यह ठीक से कमांड लाइन से नहीं है जैसा कि प्रश्न द्वारा आवश्यक है, लेकिन यह बहुत अच्छा काम करता है यदि आपको स्थायी रूप से जावास्क्रिप्ट को अक्षम करने की आवश्यकता है।
लोरेंजो साइकोटो

1

नौसिखिया Powershell उपयोगकर्ताओं के लिए यह जानना महत्वपूर्ण है कि '।' पॉवरशेल का एक सिंथैटिक तत्व है, इसलिए स्विच को दोहरे उद्धरण चिह्नों में संलग्न किया जाना है:

mvan क्लीन इंस्टॉल "-Davaven.javadoc.skip = true"

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.